public ExtendedEventsReader(string logFilePath,
                                    OnReadEventHandler onReadEvent,
                                    OnReadMetadataHandler onReadMetadata,
                                    BeforeReadFileHandler beforeReadFile,
                                    AfterReadFileHandler afterReadFile,
                                    OnErrorEventHandler onError)
        {
            OnReadMetadata = onReadMetadata;
            OnReadEvent    = onReadEvent;
            BeforeReadFile = beforeReadFile;
            AfterReadFile  = afterReadFile;

            if (File.GetAttributes(logFilePath).HasFlag(FileAttributes.Directory))
            {
                _logFileDirectoryPath         = logFilePath;
                _logFileSourcePathIsDirectory = true;
                UpdateEventLogFilesFromDirectory();
            }
            else
            {
                _logFileSourcePathIsDirectory = false;
                _logFilesWithData             = new[] { logFilePath };
                _logFileDirectoryPath         = new FileInfo(_logFilesWithData[0]).Directory?.FullName;
            }
        }
 public ExtendedEventsReader(string logFilePath,
                             OnReadEventHandler onReadEvent,
                             BeforeReadFileHandler beforeReadFile,
                             AfterReadFileHandler afterReadFile) : this(logFilePath, onReadEvent, null, beforeReadFile, afterReadFile, null)
 {
 }