Esempio n. 1
0
 public void Stop()
 {
     lock (_runningLock)
     {
         if (IsRunning)
         {
             KeeperInfos.ForEach(p => p.Keeper?.Stop());
             IsRunning = false;
         }
     }
 }
Esempio n. 2
0
 public void Start()
 {
     lock (_runningLock)
     {
         if (!IsRunning)
         {
             IsRunning = true;
             PrepareKeeper();
             KeeperInfos.ForEach(p => p.Keeper?.Start());
         }
     }
 }
Esempio n. 3
0
 private void PrepareKeeper()
 {
     KeeperInfos.ForEach(p => p.Keeper = null);
     KeeperInfos.ForEach(p =>
     {
         try
         {
             var keeper       = PluginHelper.GetKeepper(PluginHelper.Find(p.Key), p.InitKey);
             keeper.LogEvent += (s, e) =>
             {
                 LogHelper.WriteLog(e);
             };
             p.Keeper = keeper;
         }
         catch (Exception e)
         {
             LogHelper.WriteLog($"Keeper[{p.Key}] preparation is failed, message:{e.Message}");
         }
     });
 }