Ejemplo n.º 1
0
 private void RefreshLogFilesSourceCacheAsync(LogView oldLogView, LogView newLogView)
 {
     Task.Run(() =>
     {
         var logFilesToRefresh = new List <LogFile>();
         if (oldLogView != null)
         {
             foreach (var identifier in oldLogView.AllLogFilePathsAndDatabaseNames)
             {
                 var logFile = LogFilesSourceCache.Lookup(identifier);
                 if (logFile.HasValue)
                 {
                     logFilesToRefresh.Add(logFile.Value);
                 }
             }
         }
         if (newLogView != null)
         {
             foreach (var identifier in newLogView.AllLogFilePathsAndDatabaseNames)
             {
                 var logFile = LogFilesSourceCache.Lookup(identifier);
                 if (logFile.HasValue)
                 {
                     logFilesToRefresh.Add(logFile.Value);
                 }
             }
         }
         LogFilesSourceCache.Refresh(logFilesToRefresh);
         RaisePropertyChangedEvent("LogFiles");
     });
 }
Ejemplo n.º 2
0
 private void RemoveLogSourceFromLogView(ILogEntriesSource logEntriesSource)
 {
     if (logEntriesSource is LogFile logFile)
     {
         _selectedLogView.LogFilePaths.Remove(logFile.NetworkFile.FullName);
         LogFilesSourceCache.Refresh(logFile);
     }
     else if (logEntriesSource is Database database)
     {
         _selectedLogView.DatabaseNames.Remove(database.Name);
         DatabasesSourceCache.Refresh(database);
     }
     Mediator.NotifyColleagues(MediatorMessages.LogSourceRemovedFromSelectedLogView, logEntriesSource);
 }