Api/Netina.Core/QuartzServices/JobScheduler.cs

33 lines
1.0 KiB
C#
Raw Permalink Normal View History

using Microsoft.Extensions.Logging;
using Quartz;
namespace Netina.Core.QuartzServices;
2024-08-09 21:55:16 +03:30
public class JobScheduler(IScheduler scheduler, ILogger<JobScheduler> logger)
{
public void Start()
{
2024-08-09 21:55:16 +03:30
scheduler.Start();
IJobDetail job = JobBuilder.Create<SiteMapScheduledJob>()
.WithIdentity("SiteMapJob", "admin")
.Build();
ITrigger trigger = TriggerBuilder.Create()
.WithIdentity("SiteMapJobTrigger", "admin")
.WithSchedule(CronScheduleBuilder.AtHourAndMinuteOnGivenDaysOfWeek(1, 10,
DayOfWeek.Saturday,
DayOfWeek.Sunday,
DayOfWeek.Monday,
DayOfWeek.Tuesday,
DayOfWeek.Wednesday,
DayOfWeek.Thursday,
DayOfWeek.Friday))
.StartNow()
.Build();
2024-08-09 21:55:16 +03:30
var offset = scheduler.ScheduleJob(job, trigger);
2024-08-09 21:55:16 +03:30
logger.LogInformation($"======== Table Schedulers Set For {offset.Result.ToString()} IN {DateTime.Now.ToString()} ===========");
}
}