private IEnumerable <ITrigger> CreateTriggers(JobSchedule schedule, IJobDetail jobDetail) { foreach (var cronExpression in schedule.CronExpressions) { yield return(TriggerBuilder .Create() .WithCronSchedule(cronExpression) .WithDescription(cronExpression) .ForJob(jobDetail) .Build()); } }
private static IJobDetail CreateJob(JobSchedule schedule) { var jobType = schedule.JobType; var jobBuilder = JobBuilder .Create(jobType) .StoreDurably() .WithIdentity($"{schedule.JobName}") .WithDescription(jobType.Name); if (schedule.Retry.HasValue) { jobBuilder = jobBuilder.UsingJobData("Retry", schedule.Retry.Value); } if (schedule.Data != null) { jobBuilder.SetJobData(new JobDataMap((IDictionary <string, object>)schedule.Data)); } return(jobBuilder.Build()); }