Exemple #1
0
 public EventObserver(string register, Define.ActionTypeEnum registAction, string publisher, Action <object> action)
 {
     Register     = register;
     RegistAction = registAction;
     Publisher    = publisher;
     ActionParam  = action;
 }
Exemple #2
0
        public static void Regist(string register, string publisher, Define.ActionTypeEnum registAction, Action <object> callBackAction)
        {
            var currentRegister = RegisterList.FirstOrDefault(s => s.Register == register && s.RegistAction == registAction && s.Publisher == publisher);

            if (currentRegister == null)
            {
                currentRegister = new EventObserver(register, registAction, publisher, callBackAction);
                RegisterList.Add(currentRegister);
            }
            else
            {
                currentRegister.ActionParam = callBackAction;
            }
        }
Exemple #3
0
        public static void PulishAction(string publish, Define.ActionTypeEnum publishAction, object data = null)
        {
            var listAction = RegisterList.Where(s => s.Publisher == publish && s.RegistAction == publishAction).ToList();

            foreach (var item in listAction)
            {
                if (data == null)
                {
                    item.Action();
                }
                else
                {
                    item.ActionParam(data);
                }
            }
        }