Пример #1
0
 public static void Remove(OnXApplication applicationCore)
 {
     lock (SyncRoot)
     {
         if (_applicationCoreInstances.TryRemove(typeof(OnXApplication), out var instance) && instance != applicationCore)
         {
             _applicationCoreInstances.TryAdd(typeof(OnXApplication), instance);
         }
     }
 }
Пример #2
0
 public static void Set(OnXApplication applicationCore)
 {
     lock (SyncRoot)
     {
         _applicationCoreInstances.AddOrUpdate(
             typeof(OnXApplication),
             key => applicationCore,
             (key, old) =>
         {
             if (old != applicationCore)
             {
                 Debug.WriteLine($"Установлен новый экземпляр приложения '{applicationCore.GetType().FullName}' на базе '{typeof(OnXApplication).FullName}'. Возможны проблемы с определением активного модуля при создании экземпляров ItemBase. Для корректной работы убедитесь, что предыдущее зарегистрированное ядро такого типа было остановлено.");
             }
             return(applicationCore);
         }
             );
     }
 }
Пример #3
0
 /// <summary>
 /// Вызывается при загрузке сборок (<see cref="System.Reflection.Assembly"/>) после запуска ядра.
 /// </summary>
 protected virtual void ExecuteStartLazy(OnXApplication core)
 {
 }
Пример #4
0
 void IExecuteStartLazy <OnXApplication> .ExecuteStartLazy(OnXApplication core)
 {
     ExecuteStartLazy(core);
 }
Пример #5
0
 void IExecuteStart <OnXApplication> .ExecuteStart(OnXApplication core)
 {
     ExecuteStart(core);
 }