private void LoadFilesAsMultiInternal(string[] fileNames, EncodingOptions encodingOptions) { Logger.logInfo("Loading given files as MultiFile:"); EnterLoadFileStatus(); foreach (string name in fileNames) { Logger.logInfo("File: " + name); } if (CurrentLogFileReader != null) { CurrentLogFileReader.stopMonitoring(); UnRegisterLogFileReaderEvents(); } EncodingOptions = encodingOptions; _columnCache = new ColumnCache(); CurrentLogFileReader = new LogfileReader( fileNames, EncodingOptions, Preferences.bufferCount, Preferences.linesPerBuffer, _multifileOptions); CurrentLogFileReader.UseNewReader = !Preferences.useLegacyReader; RegisterLogFileReaderEvents(); CurrentLogFileReader.startMonitoring(); FileName = fileNames[fileNames.Length - 1]; _fileNames = fileNames; IsMultiFile = true; }
private void LoadFileInternal(string fileName, EncodingOptions encodingOptions) { EnterLoadFileStatus(); if (fileName != null) { FileName = fileName; EncodingOptions = encodingOptions; if (CurrentLogFileReader != null) { CurrentLogFileReader.StopMonitoringAsync(); UnRegisterLogFileReaderEvents(); } if (!LoadPersistenceOptions()) { if (!IsTempFile) { ILogLineColumnizer columnizer = FindColumnizer(); if (columnizer != null) { if (_reloadMemento == null) { columnizer = Util.CloneColumnizer(columnizer); } } PreSelectColumnizer(columnizer); } SetDefaultHighlightGroup(); } // this may be set after loading persistence data if (_fileNames != null && IsMultiFile) { LoadFilesAsMulti(_fileNames, EncodingOptions); return; } _columnCache = new ColumnCache(); try { CurrentLogFileReader = new LogfileReader( fileName, EncodingOptions, IsMultiFile, Preferences.bufferCount, Preferences.linesPerBuffer, _multifileOptions); CurrentLogFileReader.UseNewReader = !Preferences.useLegacyReader; } catch (LogFileException lfe) { MessageBox.Show("Cannot load file\n" + lfe.Message, "LogExpert"); BeginInvoke(new Action<bool>(Close), new object[] { true }); _isLoadError = true; return; } ILogLineXmlColumnizer xmlColumnizer = CurrentColumnizer as ILogLineXmlColumnizer; if (xmlColumnizer != null) { CurrentLogFileReader.IsXmlMode = true; CurrentLogFileReader.XmlLogConfig = xmlColumnizer.GetXmlLogConfiguration(); } if (_forcedColumnizerForLoading != null) { CurrentColumnizer = _forcedColumnizerForLoading; } IPreProcessColumnizer preProcessColumnizer = CurrentColumnizer as IPreProcessColumnizer; if (CurrentColumnizer is IPreProcessColumnizer) { CurrentLogFileReader.PreProcessColumnizer = preProcessColumnizer; } else { CurrentLogFileReader.PreProcessColumnizer = null; } RegisterLogFileReaderEvents(); Logger.logInfo("Loading logfile: " + fileName); CurrentLogFileReader.startMonitoring(); } }