package com;
import org.quartz.SchedulerException;
import org.quartz.SchedulerListener;
import org.quartz.Trigger;
/** *//**
* 实现自己的Scheduler监听器
*
* @author zdw
*
*/
public class MySchedulerListener implements SchedulerListener
{
/** *//**
* 当一个JobDetail被scheduler的时候执行
*/
public void jobScheduled(Trigger trigger)
{
System.out.println("jobSchedulerd fire:" + trigger.getName());
}
/** *//**
* 当一个JobDetail被排除在scheduler之外的时候执行
*/
public void jobUnscheduled(String triggerName, String triggerGroup)
{
System.out.println("jobUnschedulerd fire:" + triggerName + " ,"
+ triggerGroup);
}
/** *//**
* 当Trigger被暂停的时候执行
*/
public void jobsPaused(String triggerName, String triggerGroup)
{
System.out.println("jobPaused fire:" + triggerName + " ,"
+ triggerGroup);
}
/** *//**
* 当Trigger被解除暂停的时候执行
*/
public void jobsResumed(String triggerName, String triggerGroup)
{
System.out.println("jobResumed fire:" + triggerName + " ,"
+ triggerGroup);
}
/** *//**
* 当scheduler发生严重错误的时候执行
*/
public void schedulerError(String msg, SchedulerException cause)
{
System.out.println("scheduler错误,具体消息为:" + msg);
System.out.println(cause.getMessage());
}
/** *//**
* 当scheduler被关闭的时候执行
*/
public void schedulerShutdown()
{
System.out.println("scheduler shutdown");
}
/** *//**
* 调用scheduler,当trigger到达一定条件的时候,scheduler就永远不会再fire
*/
public void triggerFinalized(Trigger arg0)
{
System.out.println("trigger finalized");
}
/** *//**
* 当trigger或trigger所在的组被暂停的时候执行
*/
public void triggersPaused(String triggerName, String triggerGroup)
{
System.out.println("trigger paused");
}
/** *//**
* 当trigger被解除暂停的时候被执行
*/
public void triggersResumed(String triggerName, String triggerGroup)
{
System.out.println("trigger resume");
}
}
调用部分:
sched.addSchedulerListener(new MySchedulerListener());
一个简单的SchedulerListener就写完了,在这里你可以完成自己的逻辑与控制.