Removed unused methods from RequestProvider class.

This commit is contained in:
David Britch 2017-04-18 16:25:54 +01:00
parent 76f95c0662
commit b07bf5b96c
2 changed files with 2 additions and 54 deletions

View File

@ -6,16 +6,8 @@ namespace eShopOnContainers.Core.Services.RequestProvider
{ {
Task<TResult> GetAsync<TResult>(string uri, string token = ""); Task<TResult> GetAsync<TResult>(string uri, string token = "");
Task<TResult> PostAsync<TResult>(string uri, TResult data, string token = "");
Task<TResult> PostAsync<TResult>(string uri, TResult data, string token = "", string header = ""); Task<TResult> PostAsync<TResult>(string uri, TResult data, string token = "", string header = "");
Task<TResult> PostAsync<TRequest, TResult>(string uri, TRequest data, string token = "");
Task<TResult> PutAsync<TResult>(string uri, TResult data, string token = "");
Task<TResult> PutAsync<TRequest, TResult>(string uri, TRequest data, string token = "");
Task DeleteAsync(string uri, string token = ""); Task DeleteAsync(string uri, string token = "");
} }
} }

View File

@ -5,7 +5,6 @@ using Newtonsoft.Json.Serialization;
using System.Net; using System.Net;
using System.Net.Http; using System.Net.Http;
using System.Net.Http.Headers; using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using System; using System;
@ -23,7 +22,6 @@ namespace eShopOnContainers.Core.Services.RequestProvider
DateTimeZoneHandling = DateTimeZoneHandling.Utc, DateTimeZoneHandling = DateTimeZoneHandling.Utc,
NullValueHandling = NullValueHandling.Ignore NullValueHandling = NullValueHandling.Ignore
}; };
_serializerSettings.Converters.Add(new StringEnumConverter()); _serializerSettings.Converters.Add(new StringEnumConverter());
} }
@ -33,7 +31,6 @@ namespace eShopOnContainers.Core.Services.RequestProvider
HttpResponseMessage response = await httpClient.GetAsync(uri); HttpResponseMessage response = await httpClient.GetAsync(uri);
await HandleResponse(response); await HandleResponse(response);
string serialized = await response.Content.ReadAsStringAsync(); string serialized = await response.Content.ReadAsStringAsync();
TResult result = await Task.Run(() => TResult result = await Task.Run(() =>
@ -56,7 +53,6 @@ namespace eShopOnContainers.Core.Services.RequestProvider
HttpResponseMessage response = await httpClient.PostAsync(uri, content); HttpResponseMessage response = await httpClient.PostAsync(uri, content);
await HandleResponse(response); await HandleResponse(response);
string serialized = await response.Content.ReadAsStringAsync(); string serialized = await response.Content.ReadAsStringAsync();
TResult result = await Task.Run(() => TResult result = await Task.Run(() =>
@ -65,61 +61,21 @@ namespace eShopOnContainers.Core.Services.RequestProvider
return result; return result;
} }
public Task<TResult> PostAsync<TResult>(string uri, TResult data, string token = "")
{
return PostAsync<TResult, TResult>(uri, data, token);
}
public async Task<TResult> PostAsync<TRequest, TResult>(string uri, TRequest data, string token = "")
{
HttpClient httpClient = CreateHttpClient(token);
string serialized = await Task.Run(() => JsonConvert.SerializeObject(data, _serializerSettings));
var content = new StringContent(serialized, Encoding.UTF8, "application/json");
HttpResponseMessage response = await httpClient.PostAsync(uri, content);
await HandleResponse(response);
string responseData = await response.Content.ReadAsStringAsync();
return await Task.Run(() => JsonConvert.DeserializeObject<TResult>(responseData, _serializerSettings));
}
public Task<TResult> PutAsync<TResult>(string uri, TResult data, string token = "")
{
return PutAsync<TResult, TResult>(uri, data, token);
}
public async Task<TResult> PutAsync<TRequest, TResult>(string uri, TRequest data, string token = "")
{
HttpClient httpClient = CreateHttpClient(token);
string serialized = await Task.Run(() => JsonConvert.SerializeObject(data, _serializerSettings));
HttpResponseMessage response = await httpClient.PutAsync(uri, new StringContent(serialized, Encoding.UTF8, "application/json"));
await HandleResponse(response);
string responseData = await response.Content.ReadAsStringAsync();
return await Task.Run(() => JsonConvert.DeserializeObject<TResult>(responseData, _serializerSettings));
}
public async Task DeleteAsync(string uri, string token = "") public async Task DeleteAsync(string uri, string token = "")
{ {
HttpClient httpClient = CreateHttpClient(token); HttpClient httpClient = CreateHttpClient(token);
await httpClient.DeleteAsync(uri); await httpClient.DeleteAsync(uri);
} }
private HttpClient CreateHttpClient(string token = "") private HttpClient CreateHttpClient(string token = "")
{ {
var httpClient = new HttpClient(); var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
if (!string.IsNullOrEmpty(token)) if (!string.IsNullOrEmpty(token))
{ {
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
} }
return httpClient; return httpClient;
} }
@ -140,8 +96,8 @@ namespace eShopOnContainers.Core.Services.RequestProvider
{ {
var content = await response.Content.ReadAsStringAsync(); var content = await response.Content.ReadAsStringAsync();
if (response.StatusCode == HttpStatusCode.Forbidden if (response.StatusCode == HttpStatusCode.Forbidden ||
|| response.StatusCode == HttpStatusCode.Unauthorized) response.StatusCode == HttpStatusCode.Unauthorized)
{ {
throw new ServiceAuthenticationException(content); throw new ServiceAuthenticationException(content);
} }