前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Quartz.net官方开发指南 第八课:SchedulerListeners

Quartz.net官方开发指南 第八课:SchedulerListeners

作者头像
张善友
发布2018-01-19 15:29:12
5660
发布2018-01-19 15:29:12
举报
文章被收录于专栏:张善友的专栏张善友的专栏

SchedulerListeners同TriggerListeners及JobListeners非常相似,SchedulerListeners只接收与特定trigger 或job无关的Scheduler自身事件通知。

Scheduler相关的事件包括:增加job或者trigger,移除Job或者trigger, scheduler内部发生的错误,scheduler将被关闭的通知,以及其他。

Quartz.ISchedulerListener 接口

代码语言:js
复制
/// <summary>  
/// The interface to be implemented by classes that want to be informed of major  
/// <see cref="IScheduler" /> events.  
/// </summary>  
/// <seealso cref="IScheduler" />  
/// <seealso cref="IJobListener" />  
/// <seealso cref="ITriggerListener" />  
/// <author> James House</author>  
public interface ISchedulerListener  
{  
/// <summary>  
/// Called by the <see cref="IScheduler" /> when a <see cref="JobDetail" />  
/// is scheduled.  
/// </summary>  
void JobScheduled(Trigger trigger);  
/// <summary>  
/// Called by the <see cref="IScheduler" /> when a <see cref="JobDetail" />  
/// is unscheduled.  
/// </summary>  
void JobUnscheduled(string triggerName, string triggerGroup);  
/// <summary>  
/// Called by the <see cref="IScheduler" /> when a <see cref="Trigger" />  
/// has reached the condition in which it will never fire again.  
/// </summary>  
void TriggerFinalized(Trigger trigger);  
/// <summary>  
/// Called by the <see cref="IScheduler"/> when a <see cref="Trigger"/>  
/// or group of <see cref="Trigger"/>s has been paused.  
/// <p>  
/// If a group was paused, then the <see param="triggerName"/> parameter  
/// will be null.  
/// </p>  
/// </summary>  
/// <param name="triggerName">Name of the trigger.</param>  
/// <param name="triggerGroup">The trigger group.</param>  
void TriggersPaused(string triggerName, string triggerGroup);  
/// <summary>  
/// Called by the <see cref="IScheduler"/> when a <see cref="Trigger"/>  
/// or group of <see cref="Trigger"/>s has been un-paused.  
/// <p>  
/// If a group was resumed, then the <see param="triggerName"/> parameter  
/// will be null.  
/// </p>  
/// </summary>  
/// <param name="triggerName">Name of the trigger.</param>  
/// <param name="triggerGroup">The trigger group.</param>  
void TriggersResumed(string triggerName, string triggerGroup);  
/// <summary>  
/// Called by the <see cref="IScheduler"/> when a <see cref="JobDetail"/>  
/// or group of <see cref="JobDetail"/>s has been paused.  
/// <p>  
/// If a group was paused, then the <see param="jobName"/> parameter will be  
/// null. If all jobs were paused, then both parameters will be null.  
/// </p>  
/// </summary>  
/// <param name="jobName">Name of the job.</param>  
/// <param name="jobGroup">The job group.</param>  
void JobsPaused(string jobName, string jobGroup);  
/// <summary>  
/// Called by the <see cref="IScheduler" /> when a <see cref="JobDetail" />  
/// or group of <see cref="JobDetail" />s has been un-paused.  
/// <p>  
/// If a group was resumed, then the <param name="jobName" /> parameter will  
/// be null. If all jobs were paused, then both parameters will be null.  
/// </p>  
/// </summary>  
void JobsResumed(string jobName, string jobGroup);  
/// <summary>  
/// Called by the <see cref="IScheduler" /> when a serious error has  
/// occured within the scheduler - such as repeated failures in the <see cref="IJobStore" />,  
/// or the inability to instantiate a <see cref="IJob" /> instance when its  
/// <see cref="Trigger" /> has fired.  
/// <p>  
/// The <see cref="SchedulerException.ErrorCode" /> property of the given SchedulerException  
/// can be used to determine more specific information about the type of  
/// error that was encountered.  
/// </p>  
/// </summary>  
void SchedulerError(string msg, SchedulerException cause);  
/// <summary>  
/// Called by the <see cref="IScheduler" /> to inform the listener  
/// that it has Shutdown.  
/// </summary>  
void SchedulerShutdown();  
}  

除了不分“全局”或者“非全局”监听器外,SchedulerListeners创建及注册的方法同其他监听器类型十分相同。所有实现Quartz.ISchedulerListener接口的对象都是SchedulerListeners。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2007-08-25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档