feat(AuthClient): implementiert IHostedService.

- Aktualisiert um AuthClient zu den Diensten als Hosted Service hinzuzufügen.
 - Der zugehörige Unit-Test wurde aktualisiert, um IHost anstelle von IServiceProvider zu verwenden, um gehostete Dienste testen zu können.
This commit is contained in:
Developer 02
2025-03-11 15:53:37 +01:00
parent 4ccf7a20b3
commit 3b0428130a
4 changed files with 51 additions and 31 deletions

View File

@@ -1,11 +1,12 @@
using DigitalData.Auth.Abstractions;
using Microsoft.AspNetCore.SignalR.Client;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
namespace DigitalData.Auth.Client;
public class AuthClient : IAuthClient, IAsyncDisposable
public class AuthClient : IAuthClient, IHostedService
{
private readonly HubConnection _connection;
@@ -60,11 +61,4 @@ public class AuthClient : IAuthClient, IAsyncDisposable
foreach (var publicKey in PublicKeys)
await GetPublicKeyAsync(publicKey.Issuer, publicKey.Audience);
}
public virtual async ValueTask DisposeAsync()
{
await _connection.StopAsync();
await _connection.DisposeAsync();
GC.SuppressFinalize(this);
}
}