public void Invoke(EventModel ev, object data)
        {
            bool isSuccess = ev.Condition.IsPass(data);

            if (isSuccess)
            {
                Task.Factory.StartNew(() =>
                {
                    taskID++;

                    //储存事件临时对象数据,事件变量
                    EventTemporaryObject.Add(taskID, ev, data);

                    //执行actions
                    ActionTask.Invoke(taskID, ev.Actions);
                });
                //响应触发事件
                OnEventTrigger?.Invoke(ev, true);
                //记录event触发
                EventLoger.Add(new EventLogModel()
                {
                    EventType = ev.EventType,
                    IsSuccess = isSuccess,
                });
            }
        }
Esempio n. 2
0
        public bool IsPass(object data = null)
        {
            var eventLogs = EventLoger.Get(Event.Types.EventType.OnIntervalTimer);

            if (Num > 0 && eventLogs.Count >= Num)
            {
                return(false);
            }
            return(true);
        }
Esempio n. 3
0
 private void ErrorMessage(string Caption, string Message, Exception e)
 {
     EnvRoomnotifyIcon.ShowBalloonTip(3000, Caption, Message, ToolTipIcon.Error);
     EventLoger.WriteEntry(Message + "\n" + e.ToString(), System.Diagnostics.EventLogEntryType.Error);
 }