From 877d6f6fe049135b2d3a1c829bcbb2132c69ee48 Mon Sep 17 00:00:00 2001 From: f4exb Date: Sat, 18 Nov 2017 20:07:53 +0100 Subject: [PATCH] Logger: new getters --- logging/logger.h | 7 ++++++ logging/loggerwithfile.cpp | 51 ++++++++++++++++++++++++++++++++++++++ logging/loggerwithfile.h | 4 +++ 3 files changed, 62 insertions(+) diff --git a/logging/logger.h b/logging/logger.h index 9bddf2535..17353333a 100644 --- a/logging/logger.h +++ b/logging/logger.h @@ -99,6 +99,13 @@ public: minLevel = minMsgLevel; } + /** + * Get the current message level + */ + QtMsgType getMinMessageLevel() const { + return minLevel; + } + /** Sets a thread-local variable that may be used to decorate log messages. This method is thread safe. diff --git a/logging/loggerwithfile.cpp b/logging/loggerwithfile.cpp index 33faedae8..c09e250e0 100644 --- a/logging/loggerwithfile.cpp +++ b/logging/loggerwithfile.cpp @@ -68,3 +68,54 @@ void LoggerWithFile::setFileMinMessageLevel(const QtMsgType& msgLevel) fileLogger->setMinMessageLevel(msgLevel); } } + +void LoggerWithFile::getConsoleMinMessageLevelStr(QString& levelStr) +{ + switch (consoleLogger->getMinMessageLevel()) + { + case QtDebugMsg: + levelStr = "debug"; + break; + case QtInfoMsg: + levelStr = "info"; + break; + case QtWarningMsg: + levelStr = "warning"; + break; + case QtCriticalMsg: + case QtFatalMsg: + levelStr = "error"; + break; + default: + levelStr = "debug"; + break; + } +} + +void LoggerWithFile::getFileMinMessageLevelStr(QString& levelStr) +{ + switch (fileLogger->getMinMessageLevel()) + { + case QtDebugMsg: + levelStr = "debug"; + break; + case QtInfoMsg: + levelStr = "info"; + break; + case QtWarningMsg: + levelStr = "warning"; + break; + case QtCriticalMsg: + case QtFatalMsg: + levelStr = "error"; + break; + default: + levelStr = "debug"; + break; + } +} + +void LoggerWithFile::getLogFileName(QString& fileName) +{ + fileName = fileLogger->getFileLoggerSettings().fileName; +} diff --git a/logging/loggerwithfile.h b/logging/loggerwithfile.h index 589639f66..29143115f 100644 --- a/logging/loggerwithfile.h +++ b/logging/loggerwithfile.h @@ -70,6 +70,10 @@ public: void setConsoleMinMessageLevel(const QtMsgType& msgLevel); void setFileMinMessageLevel(const QtMsgType& msgLevel); + void getConsoleMinMessageLevelStr(QString& levelStr); + void getFileMinMessageLevelStr(QString& levelStr); + void getLogFileName(QString& fileName); + private: /** First console logger */ Logger* consoleLogger;