mirror of
https://github.com/NicolasConstant/BirdsiteLive
synced 2025-06-05 21:49:16 +02:00
stop application if worker fails
This commit is contained in:
@ -13,19 +13,28 @@ namespace BirdsiteLive.Services
|
|||||||
{
|
{
|
||||||
private readonly IDatabaseInitializer _databaseInitializer;
|
private readonly IDatabaseInitializer _databaseInitializer;
|
||||||
private readonly IStatusPublicationPipeline _statusPublicationPipeline;
|
private readonly IStatusPublicationPipeline _statusPublicationPipeline;
|
||||||
|
private readonly IHostApplicationLifetime _applicationLifetime;
|
||||||
|
|
||||||
#region Ctor
|
#region Ctor
|
||||||
public FederationService(IDatabaseInitializer databaseInitializer, IStatusPublicationPipeline statusPublicationPipeline)
|
public FederationService(IDatabaseInitializer databaseInitializer, IStatusPublicationPipeline statusPublicationPipeline, IHostApplicationLifetime applicationLifetime)
|
||||||
{
|
{
|
||||||
_databaseInitializer = databaseInitializer;
|
_databaseInitializer = databaseInitializer;
|
||||||
_statusPublicationPipeline = statusPublicationPipeline;
|
_statusPublicationPipeline = statusPublicationPipeline;
|
||||||
|
_applicationLifetime = applicationLifetime;
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
|
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
|
||||||
{
|
{
|
||||||
await _databaseInitializer.InitAndMigrateDbAsync();
|
try
|
||||||
await _statusPublicationPipeline.ExecuteAsync(stoppingToken);
|
{
|
||||||
|
await _databaseInitializer.InitAndMigrateDbAsync();
|
||||||
|
await _statusPublicationPipeline.ExecuteAsync(stoppingToken);
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_applicationLifetime.StopApplication();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
Reference in New Issue
Block a user