public async Task <TResponse> Get <TResponse>(IGetApiRequest request) { var result = await GetWithResponseCode <TResponse>(request); if (IsNot200RangeResponseCode(result.StatusCode)) { return(default);
public async Task <TResponse> Get <TResponse>(IGetApiRequest request) { AddHeaders(); var response = await _httpClient.GetAsync(request.GetUrl).ConfigureAwait(false); if (response.StatusCode.Equals(HttpStatusCode.NotFound)) { return(default);
public async Task <HttpStatusCode> GetResponseCode(IGetApiRequest request) { await AddAuthenticationHeader(); AddVersionHeader(request.Version); var response = await HttpClient.GetAsync(request.GetUrl).ConfigureAwait(false); return(response.StatusCode); }
public async Task <HttpStatusCode> GetResponseCode(IGetApiRequest request) { var requestMessage = new HttpRequestMessage(HttpMethod.Get, request.GetUrl); requestMessage.AddVersion(request.Version); await AddAuthenticationHeader(requestMessage); var response = await HttpClient.SendAsync(requestMessage).ConfigureAwait(false); return(response.StatusCode); }
public async Task <TResponse> Get <TResponse>(IGetApiRequest request) { await AddAuthenticationHeader(); AddVersionHeader(request.Version); var response = await HttpClient.GetAsync(request.GetUrl).ConfigureAwait(false); if (!response.IsSuccessStatusCode) { return(default);
public async Task <TResponse> Get <TResponse>(IGetApiRequest request) { AddHeaders(); var response = await _httpClient.GetAsync(request.GetUrl).ConfigureAwait(false); response.EnsureSuccessStatusCode(); var json = await response.Content.ReadAsStringAsync().ConfigureAwait(false); return(JsonConvert.DeserializeObject <TResponse>(json)); }
public static async Task <bool> IsHealthy <T>(IGetApiClient <T> client, IGetApiRequest request) { try { var status = await client.GetResponseCode(request); return(status == HttpStatusCode.OK); } catch { return(false); } }
public Task <TResponse> Get <TResponse>(IGetApiRequest request) { var accountLegalEntityPublicHashedId = _httpContextAccessor.HttpContext.GetRouteValue("AccountLegalEntityPublicHashedId").ToString(); var accountLegalEntityId = _encodingService.Decode(accountLegalEntityPublicHashedId, EncodingType.PublicAccountLegalEntityId); if (typeof(TResponse) == typeof(Cohort)) { var cohortRequest = (GetCohortRequest)request; return(Task.FromResult((TResponse)CreateCohort(cohortRequest.CohortId, accountLegalEntityId))); } throw new NotImplementedException(); }
public async Task <T> GetData <T>(IGetApiRequest request, string cacheKey, Func <ApiResponse <T>, bool> requestCheck) { var cachedItem = await _cacheStorageService.RetrieveFromCache <T>(cacheKey); if (cachedItem != null) { return(cachedItem); } var requestData = await _client.GetWithResponseCode <T>(request); if (requestData.StatusCode == HttpStatusCode.NotFound || !requestCheck(requestData)) { return(default);
public async Task <TResponse> Get <TResponse>(IGetApiRequest request) { await AddAuthenticationHeader(); AddVersionHeader(request.Version); request.BaseUrl = _configuration.Url; var response = await _httpClient.GetAsync(request.GetUrl).ConfigureAwait(false); response.EnsureSuccessStatusCode(); var json = await response.Content.ReadAsStringAsync().ConfigureAwait(false); return(JsonConvert.DeserializeObject <TResponse>(json)); }
public async Task <TResponse> Get <TResponse>(IGetApiRequest request) { var accessToken = await GetAccessTokenAsync(); using (var client = new HttpClient())//not unit testable using directly { client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken); var response = await client.GetAsync(request.GetUrl).ConfigureAwait(false); response.EnsureSuccessStatusCode(); var json = await response.Content.ReadAsStringAsync().ConfigureAwait(false); return(JsonConvert.DeserializeObject <TResponse>(json)); } }
public async Task <TResponse> Get <TResponse>(IGetApiRequest request) { AddHeaders(); var response = await _httpClient.GetAsync(request.GetUrl).ConfigureAwait(false); if (!response.IsSuccessStatusCode && response.StatusCode == HttpStatusCode.NotFound) { throw new NotFoundException <TResponse>(); } response.EnsureSuccessStatusCode(); var json = await response.Content.ReadAsStringAsync().ConfigureAwait(false); return(JsonConvert.DeserializeObject <TResponse>(json)); }
private Task <TResponse> GetRequest <TResponse>(IGetApiRequest request, string keyName, out bool updateCache) { Task <TResponse> levelsTask; updateCache = false; var itemFromCache = _cacheStorageService.RetrieveFromCache <TResponse>(keyName).Result; if (itemFromCache != null) { levelsTask = Task.FromResult(itemFromCache); } else { levelsTask = _apiClient.Get <TResponse>(request); updateCache = true; } return(levelsTask); }
public Task <ApiResponse <TResponse> > GetWithResponseCode <TResponse>(IGetApiRequest request) { return(_apiClient.GetWithResponseCode <TResponse>(request)); }
public Task <HttpStatusCode> GetResponseCode(IGetApiRequest request) { return(_apiClient.GetResponseCode(request)); }
public Task <TResponse> Get <TResponse>(IGetApiRequest request) { return(_apiClient.Get <TResponse>(request)); }
public Task <TResponse> GetRequest <TResponse>(ICoursesApiClient <CoursesApiConfiguration> client, IGetApiRequest request, string keyName, out bool updateCache) { Task <TResponse> itemsTask; updateCache = false; var itemFromCache = _cacheStorageService.RetrieveFromCache <TResponse>(keyName).Result; if (itemFromCache != null) { itemsTask = Task.FromResult(itemFromCache); if (itemFromCache.GetType() == typeof(GetStandardsListResponse)) { if (itemFromCache is GetStandardsListResponse castItem && castItem.Total < 1) { itemsTask = client.Get <TResponse>(request); updateCache = true; } } } else { itemsTask = client.Get <TResponse>(request); updateCache = true; } return(itemsTask); }
public Task <TResponse> Get <TResponse>(IGetApiRequest request) { throw new System.NotImplementedException(); }
public Task <ApiResponse <TResponse> > GetWithResponseCode <TResponse>(IGetApiRequest request) { throw new System.NotImplementedException(); }
public Task <HttpStatusCode> GetResponseCode(IGetApiRequest request) { throw new System.NotImplementedException(); }