Exemplo n.º 1
0
        /// <summary>
        /// 获取单个任务状态(从scheduler获取)
        /// </summary>
        /// <param name="jobInfo">任务信息</param>
        /// <returns></returns>
        private TriggerState _getTriggerState(string triggerName, string triggerGroupName)
        {
            TriggerKey triggerKey   = KeyManager.CreateTriggerKey(triggerName, triggerGroupName);
            var        triggerState = Scheduler.GetTriggerState(triggerKey);

            return(triggerState);
        }
        public override bool ModifyJobCron(customer_quartzjobinfo jobInfo)
        {
            var scheduleBuilder = CronScheduleBuilder.CronSchedule(jobInfo.Cron);
            var triggerKey      = KeyManager.CreateTriggerKey(jobInfo.TriggerName, jobInfo.TriggerGroupName);
            var trigger         = TriggerBuilder.Create().StartAt(DateTimeOffset.Now.AddYears(-1)).WithIdentity(triggerKey).WithSchedule(scheduleBuilder.WithMisfireHandlingInstructionDoNothing()).Build();

            Scheduler.RescheduleJob(triggerKey, trigger);
            return(true);
        }
Exemplo n.º 3
0
        public bool DeleteJob(CronJob jobInfo)
        {
            var jobKey     = KeyManager.CreateJobKey(jobInfo.Name, jobInfo.GroupName);
            var triggerKey = KeyManager.CreateTriggerKey(jobInfo.TriggerName, jobInfo.TriggerGroupName);

            Scheduler.PauseTrigger(triggerKey);
            Scheduler.UnscheduleJob(triggerKey);
            Scheduler.DeleteJob(jobKey);
            return(true);
        }
Exemplo n.º 4
0
        public bool DeleteJob(custom_job_infoes jobInfo)
        {
            var jobKey     = KeyManager.CreateJobKey(jobInfo.JobName, jobInfo.JobGroupName);
            var triggerKey = KeyManager.CreateTriggerKey(jobInfo.TriggerName, jobInfo.TriggerGroupName);

            Scheduler.PauseTrigger(triggerKey);
            Scheduler.UnscheduleJob(triggerKey);
            Scheduler.DeleteJob(jobKey);
            return(true);
        }
        public override bool ModifyJobCron(custom_job_infoes jobInfo)
        {
            var      triggerKey = KeyManager.CreateTriggerKey(jobInfo.TriggerName, jobInfo.TriggerGroupName);
            ITrigger trigger    = TriggerBuilder.Create().StartAt(DateTimeOffset.Now)
                                  .WithIdentity(jobInfo.TriggerName, jobInfo.TriggerGroupName)
                                  .WithSimpleSchedule(x => x.WithIntervalInSeconds(jobInfo.Cycle.HasValue? jobInfo.Cycle.Value:1).WithRepeatCount(jobInfo.RepeatCount.Value - 1))
                                  .Build();

            Scheduler.RescheduleJob(triggerKey, trigger);
            return(true);
        }
Exemplo n.º 6
0
        public override bool ModifyCronExpress(CronJob jobInfo)
        {
            var scheduleBuilder = CronScheduleBuilder.CronSchedule(jobInfo.CronExpress);
            var triggerKey      = KeyManager.CreateTriggerKey(jobInfo.TriggerName, jobInfo.TriggerGroupName);

            var trigger = TriggerBuilder.Create().StartAt(DateTimeOffset.Now.AddYears(-1)).WithIdentity(triggerKey).WithSchedule(scheduleBuilder.WithMisfireHandlingInstructionDoNothing()).Build();

            //WithMisfireHandlingInstructionDoNothing 不奏效

            //Remove (delete) the Quartz.ITrigger with the given key, and store the new given one
            Scheduler.RescheduleJob(triggerKey, trigger);
            return(true);
        }