zoukankan      html  css  js  c++  java
  • Quartz.net官方开发指南 第八课:SchedulerListeners

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

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

    Quartz.ISchedulerListener 接口

    /// <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。

    欢迎大家扫描下面二维码成为我的客户,为你服务和上云

  • 相关阅读:
    php public,static,private,protected,final,const,abstract
    Thinkphp5 iis环境下安装报错400 500
    php 获取某文件内容
    stdClass object 数据获取方法
    php把数组、字符串 生成文件
    Thinkphp5 runtime路径设置data
    php脚本超时 结束执行代码
    bootstrapValidator 表单验证
    thinkphp 外部js语言包
    新浪微博UWP版-实现‘分享功能’的艰难路
  • 原文地址:https://www.cnblogs.com/shanyou/p/869090.html
Copyright © 2011-2022 走看看