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

0001 /*
0002     SPDX-FileCopyrightText: 2007 Nicolas Ternisien <nicolas.ternisien@gmail.com>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #include "apacheLogMode.h"
0008 
0009 #include <QAction>
0010 
0011 #include <KLocalizedString>
0012 
0013 #include "ksystemlog_debug.h"
0014 
0015 #include "apacheAnalyzer.h"
0016 #include "apacheConfiguration.h"
0017 #include "apacheConfigurationWidget.h"
0018 #include "apacheItemBuilder.h"
0019 
0020 ApacheLogMode::ApacheLogMode(QSharedPointer<ApacheConfiguration> &apacheConfiguration, ApacheConfigurationWidget *apacheConfigurationWidget)
0021     : LogMode(QStringLiteral(APACHE_LOG_MODE_ID), i18n("Apache Log"), QStringLiteral(APACHE_MODE_ICON))
0022 {
0023     d->logModeConfiguration = apacheConfiguration;
0024     d->logModeConfigurationWidget = apacheConfigurationWidget;
0025 
0026     d->itemBuilder = new ApacheItemBuilder();
0027 
0028     // Apache Log Action
0029     d->action = createDefaultAction();
0030     d->action->setToolTip(i18n("Display the Apache log."));
0031     d->action->setWhatsThis(i18n("Displays the Apache log in the current tab. Apache is the main used Web server in the world."));
0032 
0033     checkLogFilesPresence(apacheConfiguration->apachePaths());
0034 }
0035 
0036 ApacheLogMode::~ApacheLogMode()
0037 {
0038 }
0039 
0040 Analyzer *ApacheLogMode::createAnalyzer(const QVariant &options)
0041 {
0042     Q_UNUSED(options)
0043     return new ApacheAnalyzer(this);
0044 }
0045 
0046 QVector<LogFile> ApacheLogMode::createLogFiles()
0047 {
0048     auto *apacheConfiguration = logModeConfiguration<ApacheConfiguration *>();
0049     return apacheConfiguration->findNoModeLogFiles(apacheConfiguration->apachePaths());
0050 }
0051 
0052 #include "moc_apacheLogMode.cpp"