add WorkerOptions.

- bind IntervalInMin with worker task delay
This commit is contained in:
2025-11-03 16:38:41 +01:00
parent 187f4a42fc
commit b5cd42b6fa
8 changed files with 159 additions and 2 deletions

View File

@@ -1,12 +1,18 @@
using EnvelopeGenerator.Finalizer.Models;
using Microsoft.Extensions.Options;
namespace EnvelopeGenerator.Finalizer
{
public class Worker : BackgroundService
{
private readonly ILogger<Worker> _logger;
public Worker(ILogger<Worker> logger)
private readonly WorkerOptions _options;
public Worker(ILogger<Worker> logger, IOptions<WorkerOptions> workerOptions)
{
_logger = logger;
_options = workerOptions.Value;
}
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
@@ -17,7 +23,7 @@ namespace EnvelopeGenerator.Finalizer
{
_logger.LogInformation("Worker running at: {time}", DateTimeOffset.Now);
}
await Task.Delay(1000, stoppingToken);
await Task.Delay(_options.IntervalInMillisecond, stoppingToken);
}
}
}