/// <summary> /// /// </summary> /// <param name="serverName"></param> public RecentContentReport ExecuteRequest() { //Create a web request, in including the users logged-in auth information in the request headers var urlQuery = _onlineUrls.Url_RecentContentList(_onlineSession); _onlineSession.StatusLog.AddStatus("Web request: " + urlQuery, -10); XmlDocument xmlDoc = ResourceSafe_PerformWebRequest_GetXmlDocument(urlQuery, "get recent content list"); //var webRequest = CreateLoggedInWebRequest(urlQuery); //webRequest.Method = "GET"; //var response = GetWebReponseLogErrors(webRequest, "get recent content list"); //var xmlDoc = GetWebResponseAsXml(response); //XPath requires us to have a namespace that maps to tableau's namespace var nsManager = XmlHelper.CreateTableauXmlNamespaceManager("iwsOnline"); //Get the recent workbooks.... var xmlWorkbooksList = xmlDoc.SelectNodes("//iwsOnline:recent/iwsOnline:workbook", nsManager); var recentWorkbooks = GenerateWorkbooksList(xmlWorkbooksList); //Get the recent views.... var xmlViewsList = xmlDoc.SelectNodes("//iwsOnline:recent/iwsOnline:view", nsManager); var recentViews = GenerateViewsList(xmlViewsList); //Pack it up and return it return(new RecentContentReport(recentWorkbooks, recentViews)); }