InitializingCronTrigger.java 1.6 KB
package com.espeed.yxy.timer;

import org.springframework.scheduling.quartz.CronTriggerBean;
import org.quartz.Scheduler;


public class InitializingCronTrigger{

	
	private static Scheduler scheduler;

	public void setScheduler(Scheduler scheduler){
		InitializingCronTrigger.scheduler = scheduler;
	}
	
	public static boolean isrun(){
		boolean is=false;
		try {
			System.out.println(Scheduler.DEFAULT_GROUP);
			//is= scheduler.isStarted("dotime",Scheduler.DEFAULT_GROUP);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return is;
	}
	//暂停
	public static void pasue(){
		try {
			scheduler.pauseTrigger("dotime", Scheduler.DEFAULT_GROUP);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	//恢复
	public static void resume(){
		try {
			scheduler.resumeTrigger("dotime", Scheduler.DEFAULT_GROUP);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	//dotime 配置文件里面 - 是配置jobDetail和CronExpression�?
	public static void updateTime(String expression){
		try {
			/*
			 * 通过Scheduler.getTrigger("truggerName","GroupName")得到CronTriggerBean
			 * 通过setCronExpression方法设置时间
			 * */
			CronTriggerBean trigger = (CronTriggerBean) scheduler.getTrigger("dotime", Scheduler.DEFAULT_GROUP);   
			
			if(! trigger.getCronExpression().equalsIgnoreCase(expression)){

	            trigger.setCronExpression(expression);

	            scheduler.rescheduleJob("dotime", Scheduler.DEFAULT_GROUP, trigger);

	        } 

			//trigger.setCronExpression(expression);
			System.out.println(trigger.getName() + ":"+ trigger.getCronExpression());
		   
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
 
}