Exemple #1
0
        public virtual PSSearchGetSearchResultsResponse GetSearchResultsUpdate(string resourceGroupName, string workspaceName, string id)
        {
            SearchResultsResponse            response       = OperationalInsightsManagementClient.Workspaces.UpdateSearchResults(resourceGroupName, workspaceName, id);
            PSSearchGetSearchResultsResponse searchResponse = new PSSearchGetSearchResultsResponse(response);

            return(searchResponse);
        }
Exemple #2
0
        public virtual PSSearchGetSearchResultsResponse GetSavedSearchResults(string resourceGroupName, string workspaceName, string savedSearchId)
        {
            SearchResultsResponse            responses       = OperationalInsightsManagementClient.SavedSearches.GetResults(resourceGroupName, workspaceName, savedSearchId);
            PSSearchGetSearchResultsResponse searchResponses = new PSSearchGetSearchResultsResponse(responses);

            return(searchResponses);
        }
Exemple #3
0
        public PSSearchGetSearchResultsResponse(SearchResultsResponse response)
        {
            if (response != null)
            {
                this.Id       = response.Id;
                this.Metadata = new PSSearchMetadata(response.Metadata);
                this.Value    = response.Value;

                if (response.Error != null)
                {
                    this.Error = new PSSearchError(response.Error);
                }
            }
        }
        public PSSearchGetSearchResultsResponse(SearchResultsResponse response)
        {
            if (response != null)
            {
                this.Id       = response.Id;
                this.Metadata = new PSSearchMetadata(response.Metadata);
                this.Value    = response.Value.Select(jObj => jObj.ToString()).ToList();

                if (response.Error != null)
                {
                    this.Error = new PSSearchError(response.Error);
                }
            }
        }
Exemple #5
0
        public virtual PSSearchGetSearchResultsResponse GetSearchResults(string resourceGroupName, string workspaceName, PSSearchGetSearchResultsParameters psParameters)
        {
            SearchParameters parameters = new SearchParameters();

            if (psParameters.Highlight != null)
            {
                parameters.Highlight      = new SearchHighlight();
                parameters.Highlight.Pre  = psParameters.Highlight.Pre;
                parameters.Highlight.Post = psParameters.Highlight.Post;
            }

            parameters.Top   = psParameters.Top == 0 ? 10 : psParameters.Top;
            parameters.Query = psParameters.Query;
            parameters.Start = psParameters.Start;
            parameters.End   = psParameters.End.GetValueOrDefault(DateTime.UtcNow);

            SearchResultsResponse            response       = OperationalInsightsManagementClient.Workspaces.GetSearchResults(resourceGroupName, workspaceName, parameters);
            PSSearchGetSearchResultsResponse searchResponse = new PSSearchGetSearchResultsResponse(response);

            return(searchResponse);
        }
Exemple #6
0
        /// <summary>
        /// Searches for products.
        /// </summary>
        /// <param name="searchResultsRequest">The search results request.</param>
        /// <returns>The search results response.</returns>
        public SearchResultsResponse Search(SearchResultsRequest searchResultsRequest)
        {
            SearchResultsResponse searchResultsResponse = null;

            // Prepare request
            NameValueCollection queryParams = new NameValueCollection();

            if (searchResultsRequest.Term != null)
            {
                queryParams.Add("term", searchResultsRequest.Term);
            }
            if (searchResultsRequest.Offset != null)
            {
                queryParams.Add("offset", searchResultsRequest.Offset.ToString());
            }
            if (searchResultsRequest.NrProducts != null)
            {
                queryParams.Add("nrProducts", searchResultsRequest.NrProducts.ToString());
            }
            if (searchResultsRequest.SortingMethod != null)
            {
                queryParams.Add("sortingMethod", EnumUtils.stringValueOf(searchResultsRequest.SortingMethod));
            }
            if (searchResultsRequest.SortingAscending != null)
            {
                queryParams.Add("sortingAscending", searchResultsRequest.SortingAscending.ToString());
            }
            if (searchResultsRequest.IncludeProducts != null)
            {
                queryParams.Add("includeProducts", searchResultsRequest.IncludeProducts.ToString());
            }
            if (searchResultsRequest.IncludeCategories != null)
            {
                queryParams.Add("includeCategories", searchResultsRequest.IncludeCategories.ToString());
            }
            if (searchResultsRequest.IncludeRefinements != null)
            {
                queryParams.Add("includeRefinements", searchResultsRequest.IncludeRefinements.ToString());
            }
            if (searchResultsRequest.IncludeAttributes != null)
            {
                queryParams.Add("includeAttributes", searchResultsRequest.IncludeAttributes.ToString());
            }

            string         queryString = ToQueryString(queryParams);
            HttpWebRequest request     = (HttpWebRequest)WebRequest.Create(URL_PREFIX + "/catalog/v3/searchresults/" + queryString);

            request.Method = "GET";

            // Handle request
            AuthUtils.HandleRequest(request, accessKeyId, secretAccessKey, null, queryParams);
            HttpWebResponse response = (HttpWebResponse)request.GetResponse();

            // Load XML document
            if (HttpStatusCode.OK == response.StatusCode)
            {
                XmlSerializer ser = new XmlSerializer(typeof(SearchResultsResponse));
                object        obj = ser.Deserialize(response.GetResponseStream());
                searchResultsResponse = (SearchResultsResponse)obj;
                response.Close();
            }

            return(searchResultsResponse);
        }