forked from ondra/colnod-connector
55 lines
1.1 KiB
C++
55 lines
1.1 KiB
C++
#include "logger.h"
|
|
#include "databaseapi.h"
|
|
|
|
#include <utility>
|
|
|
|
std::shared_ptr<DatabaseAPI> Logger::dbMan = nullptr;
|
|
Logger *Logger::logger = nullptr;
|
|
|
|
Logger::Logger()
|
|
{
|
|
dbMan = nullptr;
|
|
}
|
|
|
|
Logger *Logger::getLogger()
|
|
{
|
|
if (!logger)
|
|
logger = new Logger;
|
|
return logger;
|
|
}
|
|
|
|
void Logger::log(const QString& msg)
|
|
{
|
|
qDebug() << msg;
|
|
}
|
|
|
|
void Logger::logToDb(const QString &msg)
|
|
{
|
|
if (dbMan)
|
|
Logger::dbMan->log(msg);
|
|
}
|
|
|
|
void Logger::setDBMan(std::shared_ptr<DatabaseAPI> dbMan)
|
|
{
|
|
Logger::dbMan = std::move(dbMan);
|
|
}
|
|
|
|
QString Logger::makeTokenMsg(const QString &tokenId, const QString &action, const QString &source)
|
|
{
|
|
return QString("Token: %1 of subject: %2 %3. Source: %4").arg(tokenId,dbMan->getSubjectNameByTokenId(tokenId), action, source);
|
|
}
|
|
|
|
QString Logger::makeSubjectMsg(const QString &subjectId, const QString &action, const QString &source)
|
|
{
|
|
return QString("Subject: %1 %2. Source: %3").arg(dbMan->getSubjectNameById(subjectId), action, source);
|
|
}
|
|
|
|
QString Logger::makeErrorMsg(const QString &source, const QString &errMsg)
|
|
{
|
|
return QString("Source: %1, Error: %2").arg(source, errMsg);
|
|
}
|
|
|
|
|
|
|
|
|