Completed logging class to rudementary level. Extra operator overloadings still needed
This commit is contained in:
1 parent
7fa4d1fc58
commit
0dfda6f481
6 files changed
+87
-60
No files matched your search
+22
-27
@@ -13,8 +13,13 @@ using std::endl;
|
||||
|
||||
Logger::Logger(enum Level logLevel, EventBus& eventBus) :
|
||||
logLevel(logLevel),
|
||||
eventBus(eventBus)
|
||||
eventBus(eventBus),
|
||||
debug(DEBUG, *this),
|
||||
info(INFO, *this),
|
||||
warn(WARN, *this),
|
||||
fatal(FATAL, *this)
|
||||
{
|
||||
//info(this);
|
||||
logFile = ofstream("plains.log");
|
||||
|
||||
if (!logFile) {
|
||||
@@ -39,43 +44,33 @@ void Logger::log(Level lvl, const string& msg) { log ( lvl, msg.c_str() ); }
|
||||
|
||||
void Logger::log(Level lvl, const char* msg) {
|
||||
switch ( lvl ) {
|
||||
case DEBUG: debug (msg); break;
|
||||
case INFO: info (msg); break;
|
||||
case WARN: warn (msg); break;
|
||||
case FATAL: fatal (msg); break;
|
||||
case DEBUG: debug.ln (msg); break;
|
||||
case INFO: info.ln (msg); break;
|
||||
case WARN: warn.ln (msg); break;
|
||||
case FATAL: fatal.ln (msg); break;
|
||||
}
|
||||
}
|
||||
|
||||
void Logger::debug ( const string& msg ) {
|
||||
logFile << "DATESTAMP [DEBUG] " << msg << endl;
|
||||
Logger::Sink::Sink (const Level level, Logger& parent) : level(level), parent(parent) {}
|
||||
|
||||
void Logger::Sink::ln ( const string& msg ) {
|
||||
if ( level >= parent.logLevel ) parent.logFile << "DATESTAMP [" << level << "] " << msg << endl;
|
||||
}
|
||||
|
||||
void Logger::debug ( const char* msg ) {
|
||||
logFile << "DATESTAMP [DEBUG] " << msg << endl;
|
||||
void Logger::Sink::ln ( const char* msg ) {
|
||||
if ( level >= parent.logLevel ) parent.logFile << "DATESTAMP [" << level << "] " << msg << endl;
|
||||
}
|
||||
|
||||
void Logger::info ( const string& msg ) {
|
||||
if ( logLevel >= INFO ) logFile << "DATESTAMP [INFO] " << msg << endl;
|
||||
Logger::Sink& Logger::Sink::operator<<(const string& msg) {
|
||||
if ( level >= parent.logLevel ) parent.logFile << "DATESTAMP [" << level << "] " << msg;
|
||||
return *this;
|
||||
}
|
||||
|
||||
void Logger::info ( const char* msg ) {
|
||||
if ( logLevel >= INFO ) logFile << "DATESTAMP [INFO] " << msg << endl;
|
||||
Logger::Sink& Logger::Sink::operator<<(const char* msg) {
|
||||
if ( level >= parent.logLevel ) parent.logFile << "DATESTAMP [" << level << "] " << msg;
|
||||
return *this;
|
||||
}
|
||||
|
||||
void Logger::warn ( const string& msg ) {
|
||||
if ( logLevel >= WARN ) logFile << "DATESTAMP [WARN] " << msg << endl;
|
||||
}
|
||||
|
||||
void Logger::warn ( const char* msg ) {
|
||||
if ( logLevel >= WARN ) logFile << "DATESTAMP [WARN] " << msg << endl;
|
||||
}
|
||||
|
||||
void Logger::fatal ( const string& msg ) {
|
||||
if ( logLevel == FATAL ) logFile << "DATESTAMP [FATAL] " << msg << endl;
|
||||
}
|
||||
|
||||
void Logger::fatal ( const char* msg ) {
|
||||
if ( logLevel == FATAL ) logFile << "DATESTAMP [FATAL] " << msg << endl;
|
||||
}
|
||||
|
||||
}}
|
||||
Reference in new issue
Block a user