refactor(econnect-client): Gespeicherten HttpClient entfernen und pro Anfrage erstellen
- Feld „_http“ durch „_httpFactory“ ersetzt, um die Erstellung von HttpClient zu verzögern - Eigenschaft „Http“ hinzugefügt, um einen neuen Client aus der Factory abzurufen - Alle Verwendungen aktualisiert, um die Eigenschaft „Http“ anstelle der gespeicherten Instanz zu verwenden
This commit is contained in:
@@ -6,17 +6,19 @@ namespace Leanetec.EConnect.Infrastructure;
|
|||||||
|
|
||||||
public class EConnectClient<TError> : IEConnectClient<TError> where TError : class
|
public class EConnectClient<TError> : IEConnectClient<TError> where TError : class
|
||||||
{
|
{
|
||||||
private readonly HttpClient _http;
|
private readonly IHttpClientFactory _httpFactory;
|
||||||
|
|
||||||
public EConnectClient(IHttpClientFactory factory)
|
private HttpClient Http => _httpFactory.CreateEConnectClient();
|
||||||
|
|
||||||
|
public EConnectClient(IHttpClientFactory httpFactory)
|
||||||
{
|
{
|
||||||
_http = factory.CreateEConnectClient();
|
_httpFactory = httpFactory;
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<Response<TData, TError>> GetAsync<TData>(string? route = null, CancellationToken cancel = default)
|
public async Task<Response<TData, TError>> GetAsync<TData>(string? route = null, CancellationToken cancel = default)
|
||||||
where TData : class
|
where TData : class
|
||||||
{
|
{
|
||||||
var res = await _http.GetAsync(route, cancel);
|
var res = await Http.GetAsync(route, cancel);
|
||||||
|
|
||||||
if (res.IsSuccessStatusCode)
|
if (res.IsSuccessStatusCode)
|
||||||
{
|
{
|
||||||
@@ -33,7 +35,7 @@ public class EConnectClient<TError> : IEConnectClient<TError> where TError : cl
|
|||||||
public async Task<Response<IAsyncEnumerable<TData?>, TError>> GetListAsAsyncEnumerable<TData>(string? route = null, CancellationToken cancel = default)
|
public async Task<Response<IAsyncEnumerable<TData?>, TError>> GetListAsAsyncEnumerable<TData>(string? route = null, CancellationToken cancel = default)
|
||||||
where TData : class
|
where TData : class
|
||||||
{
|
{
|
||||||
var res = await _http.GetAsync(route, cancel);
|
var res = await Http.GetAsync(route, cancel);
|
||||||
|
|
||||||
if (res.IsSuccessStatusCode)
|
if (res.IsSuccessStatusCode)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user