下面列出了org.quartz.Scheduler#pauseTrigger ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
/**
* 读取数据库判断是否开始定时任务
*/
public void afterPropertiesSet() throws Exception {
super.afterPropertiesSet();
// String[] trigerrNames = this.getScheduler().getTriggerNames(Scheduler.DEFAULT_GROUP);
Scheduler scheduler = this.getScheduler();
List<String> trigerrNames = scheduler.getTriggerGroupNames();
TSTimeTaskEntity task;
for (String trigerrName : trigerrNames) {
task = timeTaskService.findUniqueByProperty(TSTimeTaskEntity.class,"taskId",trigerrName);
//数据库查询不到的定时任务或者定时任务的运行状态不为1时,都停止
//TASK #327 定时器任务默认未启动
if(task==null || !"1".equals(task.getIsStart())){
// this.getScheduler().pauseTrigger(trigerrName,Scheduler.DEFAULT_GROUP);
scheduler.pauseTrigger(new TriggerKey(trigerrName));
}
}
}
/** Remove job. */
public static void removeJob(String jobName) {
try {
Scheduler sched = schedulerFactory.getScheduler();
TriggerKey triggerKey = TriggerKey.triggerKey("ke_trigger_name_" + new Date().getTime(), "ke_trigger_group_" + new Date().getTime());
sched.pauseTrigger(triggerKey);
sched.unscheduleJob(triggerKey);
sched.deleteJob(JobKey.jobKey(jobName, KE_JOB_GROUP_NAME));
} catch (Exception e) {
throw new RuntimeException(e);
}
}
public void suspendTrigger(String triggerName, String triggerGroup) {
if(!getIsEnabled()){
throw new FixFlowScheduleException(ExceptionCode.QUARZTEXCEPTION_ISENABLE);
}
Scheduler scheduler = getScheduler();
TriggerKey tKey = new TriggerKey(triggerName,triggerGroup);
try {
scheduler.pauseTrigger(tKey);
} catch (SchedulerException e) {
throw new FixFlowException(e.getMessage(),e);
}
}
public static void pauseTrigger(String triggerName, String triggerGroup, Scheduler scheduler) throws SchedulerException {
TriggerKey triggerKey = getTriggerKey(triggerName, triggerGroup);
scheduler.pauseTrigger(triggerKey);
}
/**
* 暂停Trigger
* @param trigger
* @param scheduler
* @throws SchedulerException
*/
public static void pauseTrigger(Trigger trigger, Scheduler scheduler) throws SchedulerException {
scheduler.pauseTrigger(trigger.getKey());
}