[CHANGE] DI fixes
This commit is contained in:
@@ -6,15 +6,19 @@ using Manager.YouTube;
|
||||
|
||||
namespace Manager.App.Services.System;
|
||||
|
||||
public class ClientManager : BackgroundService
|
||||
public class ClientManager(IServiceScopeFactory scopeFactory, HostedServiceConnector serviceConnector) : BackgroundService
|
||||
{
|
||||
private readonly List<YouTubeClient> _clients = [];
|
||||
private CancellationToken _cancellationToken;
|
||||
private ILibraryService? _libraryService;
|
||||
|
||||
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
|
||||
{
|
||||
serviceConnector.RegisterService(this);
|
||||
_cancellationToken = stoppingToken;
|
||||
stoppingToken.Register(CancellationRequested);
|
||||
using var scope = scopeFactory.CreateScope();
|
||||
_libraryService = scope.ServiceProvider.GetRequiredService<ILibraryService>();
|
||||
}
|
||||
|
||||
private void CancellationRequested()
|
||||
|
11
Manager.App/Services/System/HostedServiceConnector.cs
Normal file
11
Manager.App/Services/System/HostedServiceConnector.cs
Normal file
@@ -0,0 +1,11 @@
|
||||
namespace Manager.App.Services.System;
|
||||
|
||||
public class HostedServiceConnector
|
||||
{
|
||||
private readonly List<IHostedService> _hostedServices = [];
|
||||
|
||||
public void RegisterService(IHostedService service)
|
||||
{
|
||||
_hostedServices.Add(service);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user