コード例 #1
0
        public override async Task JobWasExecuted(IJobExecutionContext context, JobExecutionException jobException, CancellationToken token)
        {
            if (!_retryStrategy.ShouldRetry(context, jobException))
            {
                return;
            }

            _logger.Information("job {job} will be retried", context.JobDetail.Key);
            var trigger = _retryStrategy.GetTrigger(context);
            await context.Scheduler.UnscheduleJob(context.Trigger.Key, token);

            await context.Scheduler.ScheduleJob(context.JobDetail, trigger, token);

            return;
        }