private void Dispose(bool disposing) { if (_disposed) { return; } if (disposing) { if (_parser != null) { _parser.Dispose(); } } _disposed = true; }
private void OnTimerTick(object sender, ElapsedEventArgs args) { var lastLogFile = logFileFinder.LastLogFile; if (lastLogFile != prevLastLogFile) { if (currentParser != null) { currentParser.Dispose(); } prevLastLogFile = lastLogFile; var stream = logStreamProvider.GetLogStream(lastLogFile); stream.Seek(0, SeekOrigin.End); currentParser = logParserProvider.Invoke(stream); } currentParser?.Parse(); }