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:97
bool hasError() const
Definition qx-applicationlogger.cpp:364
QString applicationName() const
Definition qx-applicationlogger.cpp:90
void setApplicationArguments(const QString &args)
Definition qx-applicationlogger.cpp:154
void resetStatus()
Definition qx-applicationlogger.cpp:355
IoOpReport finish(int returnCode)
Definition qx-applicationlogger.cpp:325
IoOpReport openLog()
Definition qx-applicationlogger.cpp:187
int maximumEntries() const
Definition qx-applicationlogger.cpp:113
QString applicationArguments() const
Definition qx-applicationlogger.cpp:104
QString filePath() const
Definition qx-applicationlogger.cpp:83
void setApplicationVersion(const QString &version)
Definition qx-applicationlogger.cpp:142
IoOpReport recordVerbatim(const QString &text)
Definition qx-applicationlogger.cpp:266
IoOpReport status() const
Definition qx-applicationlogger.cpp:344
IoOpReport recordGeneralEvent(const QString &src, const QString &event)
Definition qx-applicationlogger.cpp:307
bool isOpen() const
Definition qx-applicationlogger.cpp:371
ApplicationLogger()
Definition qx-applicationlogger.cpp:41
IoOpReport recordErrorEvent(const QString &src, const Error &error)
Definition qx-applicationlogger.cpp:282
void setMaximumEntries(int max)
Definition qx-applicationlogger.cpp:179
void setFilePath(const QString &path)
Definition qx-applicationlogger.cpp:124
void setApplicationName(const QString &name)
Definition qx-applicationlogger.cpp:133
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.