public async Task <HttpResponseMessage> GetHttpResponseFromRequest(ApiRequestParameters parameters) { if (parameters == null) { return(null); } return(await SendRequest(parameters.Url, parameters.Content, parameters.Method, parameters.MediaType, parameters.Token)); }
private async Task <string> GetSharePointEntityTypeFullNameAsync() { var parameters = new ApiRequestParameters { Select = "ListItemEntityTypeFullName" }; var json = await restApiClient.GetListAsync(listName, parameters); var jsonDocument = System.Text.Json.JsonDocument.Parse(json); var sharePointEntityTypeFullName = jsonDocument.RootElement.GetProperty("d").GetProperty("ListItemEntityTypeFullName").ToString(); return(sharePointEntityTypeFullName); }
/// <summary> /// Returns item with specified Id. /// </summary> /// <param name="id">Id of the target item.</param> /// <returns>The Task object of strongly typed object.</returns> public async Task <T> GetItemAsync(int id) { var usedProperties = GetUsedProperties(); var parameters = new ApiRequestParameters { Select = GetSelectParameter(usedProperties), Expand = GetExpandParameter(usedProperties) }; var json = await restApiClient.GetItemAsync(listName, id, parameters); var result = converter.ConvertFromSPEntity <T>(json, usedProperties); ResetParams(); return(result); }
/// <summary> /// Returns a collection of items from the list based on the specified query. /// </summary> /// <param name="query">CAML query as string.</param> /// <returns></returns> public async Task <List <T> > GetItemsAsync(string query) { var digest = await formDigestStorage.GetFormDigestAsync(); var usedProperties = GetUsedProperties(); var parameters = new ApiRequestParameters { Select = GetSelectParameter(usedProperties), Expand = GetExpandParameter(usedProperties), Top = top }; var json = await restApiClient.GetItemsAsync(listName, digest, query, parameters); var result = converter.ConvertFromSPEntities <T>(json, usedProperties); ResetParams(); return(result); }
public async Task <string> PerformApiRequest(ApiRequestParameters parameters) { try { if (parameters == null) { return(null); } if (!await CheckInternetStatus()) { return(null); } var response = await _apiRequest.GetHttpResponseFromRequest(parameters); if (response == null || !response.IsSuccessStatusCode) { DisplayAlert("Error", "There was an issue communicating with the services"); return(null); } var content = await response.Content.ReadAsStringAsync(); if (string.IsNullOrEmpty(content)) { DisplayAlert("Error", "The content had an issue."); return(null); } return(content); } catch (Exception) { DisplayAlert("Error", "Communication issue"); return(null); } }