OThinker.H3.EventHandlers.IWorkItemEventHandler

说明:工作项的事件处理接口,注意:这里的事件都是滞后的事件,并不是实时的事件,比如:工作项创建事件,是在新建的工作项保存进数据库中才被触发的,而且是异步触发的。如果事件处理程序耗用大量的CPU,那么会影响引擎的性能;如果事件处理程序抛出异常,那么引擎会忽略掉这个异常。

部署方法:创建一个新的类库,引用H3Cloud程序集,将类继承至 IMessageEventHandler,编译成程序集后发布至H3Cloud安装目录 Server/Adapters目录下。

示例:

using System;

using System.Data;


namespace OThinker.Demo

{

    /// <summary>

    /// 工作任务触发事件

    /// </summary>

    public class WorkItemHandler : OThinker.H3.EventHandlers.IWorkItemEventHandler

    {

        /// <summary>

        /// 创建工作任务事件

        /// </summary>

        /// <param name="Engine">引擎实例对象</param>

        /// <param name="Obj">工作任务对象</param>

        public void OnCreated(IEngine Engine, WorkItem.WorkItem Obj)

        {

            // TODO:程序逻辑

        }


        /// <summary>

        /// 移除工作任务事件

        /// </summary>

        /// <param name="Engine">引擎实例对象</param>

        /// <param name="ObjId">工作任务ID</param>

        public void OnRemoved(IEngine Engine, string ObjId)

        {

            // TODO:程序逻辑

        }


        /// <summary>

        /// 工作任务更新事件

        /// </summary>

        /// <param name="Engine">引擎实例对象</param>

        /// <param name="Obj">工作任务对象</param>

        public void OnUpdated(IEngine Engine, WorkItem.WorkItem Obj)

        {

            // TODO:程序逻辑

        }

    }

}