コード例 #1
0
        private void SetLogEntriesProvider(ILogEntriesProvider newProvider)
        {
            if (this.currentProvider != null)
            {
                this.currentProvider.NewLogEntry -= this.LogEntriesProviderNewLogEntryHandler;
            }

            this.currentProvider = newProvider;

            if (this.currentProvider == null)
            {
                return;
            }

            this.currentProvider.NewLogEntry += this.LogEntriesProviderNewLogEntryHandler;

            var logOverlayControl = GetControl();

            if (logOverlayControl == null)
            {
                return;
            }

            var errors = (from l in this.currentProvider.Log.TakeLastNetStandard(1000)
                          let logEntry = l.LogEntry
                                         where IsWatchedSeverity(logEntry.Severity) &&
                                         logEntry.Date > this.currentProvider.LastProcessedErrorDate
                                         select l).ToList();

            this.currentProvider.LastProcessedErrorDate = DateTime.Now;

            logOverlayControl.Clear();
            logOverlayControl.Display(errors);
        }
コード例 #2
0
 public LogEntriesInteractor(ILogEntriesProvider logEntriesProvider)
 {
     this.logEntriesProvider = logEntriesProvider;
 }