File indexing completed on 2024-05-19 05:49:15

0001 /*
0002     SPDX-FileCopyrightText: 2007 Nicolas Ternisien <nicolas.ternisien@gmail.com>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include <KLocalizedString>
0010 
0011 #include "fileAnalyzer.h"
0012 
0013 #include "ksystemlog_debug.h"
0014 #include "localLogFileReader.h"
0015 #include "parsingHelper.h"
0016 
0017 #include "cupsPdfLogMode.h"
0018 #include <QRegExp>
0019 class CupsPdfAnalyzer : public FileAnalyzer
0020 {
0021     Q_OBJECT
0022 
0023 public:
0024     // Fri Sep 30 21:58:37 2005  [ERROR] failed to create spool directory (/var/spool/cups-pdf/SPOOL)
0025     explicit CupsPdfAnalyzer(LogMode *logMode);
0026 
0027     ~CupsPdfAnalyzer() override
0028     {
0029     }
0030 
0031     LogViewColumns initColumns() override;
0032 
0033 protected:
0034     const QRegExp mCupsPdfRegex;
0035 
0036     LogFileReader *createLogFileReader(const LogFile &logFile) override
0037     {
0038         return new LocalLogFileReader(logFile);
0039     }
0040 
0041     Analyzer::LogFileSortMode logFileSortMode() override
0042     {
0043         return Analyzer::AscendingSortedLogFile;
0044     }
0045 
0046     /*
0047      * https://pawn.physik.uni-wuerzburg.de/~vrbehr/cups-pdf/documentation.shtml (cups-pdf_log)
0048      *
0049      * Thu Jun 14 12:40:35 2007 [STATUS] identification string sent
0050      * Thu Jun 14 12:43:07 2007 [ERROR] failed to set file mode for PDF file (non fatal)
0051      *(/var/spool/cups-pdf/root/Test_Pdf.pdf)
0052      * Thu Jun 14 12:43:07 2007 [STATUS] PDF creation successfully finished (root)
0053      * Fri Sep 30 21:58:37 2005  [ERROR] failed to create spool directory (/var/spool/cups-pdf/SPOOL)
0054      * Sat Oct  1 09:11:45 2005  [ERROR] failed to create spool directory (/var/spool/cups-pdf/SPOOL)
0055      */
0056     LogLine *parseMessage(const QString &logLine, const LogFile &originalLogFile) override;
0057 
0058     LogLevel *findLogLevel(const QString &level);
0059 };