protected override void OnDispose() { m_LogIndexes.OnIndexesChanged -= OnIndexCountChangedCallback; m_LogIndexes.OnIndexesAdded -= OnIndexesAddedCallback; m_Parser.OnProgress -= OnParserProgressCallback; m_Parser.OnParserReadError -= OnParserReadErrorCallback; m_Parser.OnInitialReadDone -= OnParserInitialReadDone; m_Parser.OnDecompressionDone -= OnParserDecompressionDone; m_Parser.MultippleLogFilesQuery -= OnMultipleLogFileQuery; if (m_RequestManager != null) { m_RequestManager.Dispose(); m_RequestManager = null; } m_Stream?.Dispose(); m_Parser?.Dispose(); }
private void OnParserDecompressionDone(object sender, EventArgs e) { m_Stream = new FileStream(m_Parser.Filename, FileMode.Open, FileAccess.Read, FileShare.ReadWrite, 200); m_LogDataCache = new LogDataCache(m_Stream); m_RequestManager = new QueuedRequestManager(_instanceId, this.m_LogIndexes, m_Parser.Filename); }