Ejemplo n.º 1
0
        public PluginsExecutionResults SendCompleteProcessingSignalToPlugins(bool runAborted = false)
        {
            _completeProcessingCalled = true;
            var pluginsExecutionResults = new PluginsExecutionResults();

            if (runAborted)
            {
                _runAborted = true;
                return(pluginsExecutionResults); // We don't want plugins to try to do any more work (and potentially make things worse) if we're aborting the run
            }

            foreach (var plugin in _plugins)
            {
                try
                {
                    var result = plugin.CompleteProcessing();
                    pluginsExecutionResults.AddSinglePluginResults(plugin.Name, result);
                }
                catch (Exception ex)
                {
                    _logger.LogError(ex, $"Exception occurred while {plugin.Name} plugin was completing processing");
                }
            }

            return(pluginsExecutionResults);
        }
Ejemplo n.º 2
0
 public ProcessLogSetResult(
     string errorMessage,
     ExitReason exitReason,
     long fullLogSetSizeBytes,
     bool isDirectory,
     HashSet <string> loadedPlugins,
     Dictionary <LogType, ProcessLogTypeResult> logProcessingStatistics,
     PluginsExecutionResults pluginsExecutionResults,
     HashSet <string> pluginsReceivedAnyData
     )
 {
     ErrorMessage            = errorMessage;
     ExitReason              = exitReason;
     FullLogSetSizeBytes     = fullLogSetSizeBytes;
     IsDirectory             = isDirectory;
     LoadedPlugins           = loadedPlugins;
     LogProcessingStatistics = logProcessingStatistics;
     PluginsExecutionResults = pluginsExecutionResults;
     PluginsReceivedAnyData  = pluginsReceivedAnyData;
 }