1#ifndef APPLICATIONLOGGER_H
2#define APPLICATIONLOGGER_H
5#include "qx/io/qx_io_export.h"
10#include <QRegularExpression>
14#include <qx/io/qx-textstreamwriter.h>
16class QCoreApplication;
25 static inline const QString HEADER_TEMPLATE = u
"[ %1 Execution Log ] (%2) : %3"_s;
27 static inline const QRegularExpression HEADER_PATTERN = QRegularExpression(uR
"(^\[ .* Execution Log \] \(.*\) : .+)"_s,
28 QRegularExpression::MultilineOption);
29 static inline const QString NO_PARAMS = u
"*None*"_s;
30 static inline const QString EVENT_TEMPLATE = u
" - <%1> [%2] %3"_s;
31 static inline const QString ERR_TEMPLATE = u
" - <%1> [%2] %3) %4 - %5"_s;
32 static inline const QString COMMANDLINE_LABEL = u
"Arguments:"_s;
33 static inline const QString EVENTS_LABEL = u
"Events:"_s;
34 static inline const QString FINISH_TEMPLATE = u
"---------- Execution finished %1 (Code %2) ----------"_s;
35 static inline const QString FINISH_SUCCESS = u
"successfully"_s;
36 static inline const QString FINISH_ERR = u
"prematurely"_s;
44 QString mAppArguments;
45 QDateTime mConstructionTimeStamp;
QString applicationVersion() const
Definition qx-applicationlogger.cpp:94
bool hasError() const
Definition qx-applicationlogger.cpp:354
QString applicationName() const
Definition qx-applicationlogger.cpp:87
void setApplicationArguments(const QString &args)
Definition qx-applicationlogger.cpp:151
void resetStatus()
Definition qx-applicationlogger.cpp:345
IoOpReport finish(int returnCode)
Definition qx-applicationlogger.cpp:315
IoOpReport openLog()
Definition qx-applicationlogger.cpp:177
int maximumEntries() const
Definition qx-applicationlogger.cpp:110
QString applicationArguments() const
Definition qx-applicationlogger.cpp:101
QString filePath() const
Definition qx-applicationlogger.cpp:80
void setApplicationVersion(const QString &version)
Definition qx-applicationlogger.cpp:139
IoOpReport recordVerbatim(const QString &text)
Definition qx-applicationlogger.cpp:256
IoOpReport status() const
Definition qx-applicationlogger.cpp:334
IoOpReport recordGeneralEvent(const QString &src, const QString &event)
Definition qx-applicationlogger.cpp:297
bool isOpen() const
Definition qx-applicationlogger.cpp:361
ApplicationLogger()
Definition qx-applicationlogger.cpp:38
IoOpReport recordErrorEvent(const QString &src, const Error &error)
Definition qx-applicationlogger.cpp:272
void setMaximumEntries(int max)
Definition qx-applicationlogger.cpp:169
void setFilePath(const QString &path)
Definition qx-applicationlogger.cpp:121
void setApplicationName(const QString &name)
Definition qx-applicationlogger.cpp:130
The Error class acts as an interface for an extensible variety of error objects.
Definition qx-error.h:65
The IoOpReport class is a container for details regarding the outcome of an IO operation.
Definition qx-ioopreport.h:53
The TextStreamWriter class is a specialized wrapper for QTextStream that narrows and simplifies its u...
Definition qx-textstreamwriter.h:19
The Qx namespace is the main namespace through which all non-global functionality of the Qx library i...
Definition qx-abstracterror.cpp:13
The qx-error.h header file provides access to the Error interface.