Files
scheduler/LiteCharmsScheduler/Workers/JobWorker.cs
T
Khwezi Mngoma c47fef80b3
continuous-integration/drone/pr Build is passing
Externalised email processor cron setting
2026-05-16 00:42:47 +02:00

22 lines
870 B
C#

using LiteCharms.Features.Quartz.Abstractions;
using LiteCharms.Features.Shop.Notifications.Events;
namespace LiteCharmsScheduler.Workers
{
public class JobWorker(IJobOrchestrator jobOrchestrator, ILogger<JobWorker> logger, IConfiguration configuration) : BackgroundService
{
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
{
string? emailProcessorCron = !string.IsNullOrWhiteSpace(configuration.GetSection("EmailProcessorCron").Value)
? configuration.GetSection("EmailProcessorCron").Value
: "0 */4 * * * ?";
var emailProcessorJob = ProcessEmailNotificationsEvent.Create();
await jobOrchestrator.ScheduleAsync(emailProcessorJob, emailProcessorCron!, stoppingToken);
logger.LogInformation("Startup jobs scheduled");
}
}
}