diff --git a/LiteCharmsScheduler/LiteCharmsScheduler.csproj b/LiteCharmsScheduler/LiteCharmsScheduler.csproj index 6ea4de9..6ede9ba 100644 --- a/LiteCharmsScheduler/LiteCharmsScheduler.csproj +++ b/LiteCharmsScheduler/LiteCharmsScheduler.csproj @@ -8,7 +8,7 @@ - + all @@ -18,9 +18,9 @@ - - - + + + diff --git a/LiteCharmsScheduler/Program.cs b/LiteCharmsScheduler/Program.cs index a5df390..6893ff2 100644 --- a/LiteCharmsScheduler/Program.cs +++ b/LiteCharmsScheduler/Program.cs @@ -12,7 +12,7 @@ builder.Services.AddEmailServices(builder.Configuration); builder.Services.AddShopDatabase(builder.Configuration); builder.Services.AddQuartzSchedulerClient(ShopSchedulerName, builder.Configuration); -builder.Services.AddHostedService(); +builder.Services.AddHostedService(); var host = builder.Build(); diff --git a/LiteCharmsScheduler/Workers/JobWorker.cs b/LiteCharmsScheduler/Workers/JobWorker.cs new file mode 100644 index 0000000..a1dd019 --- /dev/null +++ b/LiteCharmsScheduler/Workers/JobWorker.cs @@ -0,0 +1,15 @@ +using LiteCharms.Abstractions; +using LiteCharms.Features.Notifications.Events; + +namespace LiteCharmsScheduler.Workers +{ + public class JobWorker(IJobOrchestrator jobOrchestrator, ILogger logger) : BackgroundService + { + protected override async Task ExecuteAsync(CancellationToken stoppingToken) + { + await jobOrchestrator.ScheduleAsync(ProcessEmailNotificationsEvent.Create(), "0 1 * * * ?", stoppingToken); + + logger.LogInformation("Startup jobs scheduled"); + } + } +} diff --git a/LiteCharmsScheduler/Workers/Worker.cs b/LiteCharmsScheduler/Workers/Worker.cs deleted file mode 100644 index eadaca8..0000000 --- a/LiteCharmsScheduler/Workers/Worker.cs +++ /dev/null @@ -1,17 +0,0 @@ -namespace LiteCharmsScheduler.Workers -{ - public class Worker(ILogger logger) : BackgroundService - { - protected override async Task ExecuteAsync(CancellationToken stoppingToken) - { - while (!stoppingToken.IsCancellationRequested) - { - if (logger.IsEnabled(LogLevel.Information)) - { - logger.LogInformation("Worker running at: {time}", DateTimeOffset.Now); - } - await Task.Delay(1000, stoppingToken); - } - } - } -}