public virtual void InitModular()
        {
            mCreaterByAttributes   = new List <ModularNoticeCreater>();
            mDecoraterByAttributes = new List <ModularNoticeDecorater>();
            mListenerByAttributes  = new List <ModularNoticeListener>();
            mModularNotifierMapper = new KeyValueList <Action <INoticeBase <int> >, ModularNotifier>();

            if (NoticeCreates == default)
            {
                NoticeCreates = new ModularNoticeCreater[0];
            }
            else
            {
            }

            if (NoticeDecoraters == default)
            {
                NoticeDecoraters = new ModularNoticeDecorater[0];
            }
            else
            {
            }

            if (NoticeListeners == default)
            {
                NoticeListeners = new ModularNoticeListener[0];
            }
            else
            {
            }

            InitCustomHandlers();

            GenerateModularHandlers();
        }
Exemple #2
0
 /// <summary>修饰化模块装饰处理方法的修改器</summary>
 private DecoratorHandler OnSetDecorator(DecoratorHandler a, ModularNoticeDecorater b, bool isAdd)
 {
     if (isAdd)
     {
         a += b.Handler;
     }
     else
     {
         a -= b.Handler;
     }
     return(a);
 }
Exemple #3
0
 /// <summary>修饰化模块装饰处理方法的获取器</summary>
 private DecoratorHandler OnGetDecorator(ModularNoticeDecorater param)
 {
     return(param.Handler);
 }
Exemple #4
0
 /// <summary>
 /// 添加消息装饰器函数
 /// </summary>
 /// <param name="noticeName">消息名</param>
 /// <param name="method">装饰器函数</param>
 public void AddNoticeDecorator(ModularNoticeDecorater target, bool willSort = false)
 {
     mDecorators.AddHandler(ref target, willSort);
 }