Beispiel #1
0
 /// <summary>
 /// Конструктор.
 /// </summary>
 /// <param name="host">Модуль.</param>
 /// <param name="callbacks">Обратные вызовы.</param>
 /// <param name="attachToParentEvents">Присоединить к родительским событиям.</param>
 public BaseModuleLogic(object host,
                        IBaseModuleLogicSuspendAwareCallbacks callbacks,
                        bool attachToParentEvents = false)
 {
     _host = host ?? throw new ArgumentNullException(nameof(host));
     _suspendAwareCallbacks = callbacks;
     _callbacks             = callbacks;
     _attachToParentDispose = attachToParentEvents;
     _suspendedAware        = true;
 }
Beispiel #2
0
 /// <summary>
 /// Конструктор.
 /// </summary>
 /// <param name="suspendedAware">Поддерживает приостановку работы.</param>
 /// <param name="attachToParentDispose">Присоединить к родительскому событию по завершению работы.</param>
 protected ModuleBase(bool suspendedAware, bool attachToParentDispose)
 {
     if (suspendedAware)
     {
         IBaseModuleLogicSuspendAwareCallbacks callbacks = this;
         _moduleLifetime = new BaseModuleLogic <TIntf>(this, callbacks, attachToParentDispose);
     }
     else
     {
         IBaseModuleLogicCallbacks callbacks = this;
         _moduleLifetime = new BaseModuleLogic <TIntf>(this, callbacks, attachToParentDispose);
     }
 }