1 #pragma once 2 3 #include <QMap> 4 5 #include "auditConvertor.h" 6 #include "fileAnalyzer.h" 7 8 #include "auditLogMode.h" 9 10 class AuditAnalyzer : public FileAnalyzer 11 { 12 Q_OBJECT 13 14 public: 15 explicit AuditAnalyzer(LogMode *logMode); 16 17 LogViewColumns initColumns() override; 18 19 void setLogFiles(const QVector<LogFile> &logFiles) override; 20 21 protected: 22 LogFileReader *createLogFileReader(const LogFile &logFile) override; 23 Analyzer::LogFileSortMode logFileSortMode() override; 24 LogLine *parseMessage(const QString &logLine, const LogFile &originalFile) override; 25 26 private: 27 void deleteLogFiles(); 28 29 /** 30 * Parse and insert the buffered lines in the model 31 * Returns the count of inserted lines 32 */ 33 int insertLines(const QStringList &bufferedLines, const LogFile &logFile, ReadingMode readingMode); 34 35 /** 36 * Parse and insert a line in the model 37 * Returns false if it was not inserted, true if it was 38 */ 39 bool insertLine(const QStringList &event, const LogFile &originalFile, ReadingMode readingMode); 40 41 QString getMsgField(const QString &logLine); 42 43 LogLine *parseEvent(const QStringList &event, const LogFile &originalFile); 44 45 private Q_SLOTS: 46 void logFileChanged(LogFileReader *logFileReader, Analyzer::ReadingMode readingMode, const QStringList &content); 47 48 private: 49 AuditConvertor m_conv; 50 }; 51 52