summaryrefslogtreecommitdiffstats
path: root/src/Common/Logger.h
diff options
context:
space:
mode:
authorJohannes Thorn <dante@g4t3.de>2008-09-28 00:35:16 +0200
committerJohannes Thorn <dante@g4t3.de>2008-09-28 00:35:16 +0200
commit29d723d82834a30557136f7585254eaf3673ce69 (patch)
tree2a6fa6686a709bc205036288c8f6c75cdccc050f /src/Common/Logger.h
parent37b452c361d99ca809c699b6968df3723f0cadb9 (diff)
downloadmad-29d723d82834a30557136f7585254eaf3673ce69.tar
mad-29d723d82834a30557136f7585254eaf3673ce69.zip
Logger gr?ndlich ?berarbeitet und den Networklogger um Timestamp erweitert.
Diffstat (limited to 'src/Common/Logger.h')
-rw-r--r--src/Common/Logger.h50
1 files changed, 6 insertions, 44 deletions
diff --git a/src/Common/Logger.h b/src/Common/Logger.h
index 593fd7a..1fff654 100644
--- a/src/Common/Logger.h
+++ b/src/Common/Logger.h
@@ -20,35 +20,24 @@
#ifndef MAD_COMMON_LOGGER_H_
#define MAD_COMMON_LOGGER_H_
+#include "LoggerBase.h"
#include <algorithm>
-#include <cstdarg>
#include <list>
#include <string>
-#include <bitset>
+#include <cstdarg>
+#include <ctime>
namespace Mad {
namespace Common {
-class Logger {
- public:
- enum MessageLevel {
- CRITICAL, ERROR, WARNING, DEFAULT, VERBOSE, DEBUG
- };
-
- enum MessageCategory {
- SYSTEM, NETWORK, DAEMON, USER, DISK, PROGRAM, GENERAL
- };
-
+class Logger : public LoggerBase {
private:
static std::list<Logger*> loggers;
- std::bitset<16> categories;
- MessageLevel level;
static void logfv(MessageCategory category, MessageLevel level, const char *format, va_list ap);
protected:
- Logger() : level(DEFAULT) {setAllCategories();}
- virtual void logMessage(MessageCategory category, MessageLevel level, const std::string &message) = 0;
+ virtual void logMessage(MessageCategory category, MessageLevel level, time_t messageTimestamp, const std::string &message) = 0;
public:
static void log(MessageCategory category, MessageLevel level, const std::string &message);
@@ -77,34 +66,7 @@ class Logger {
loggers.erase(it);
}
- void setCategory(MessageCategory newCategory) {
- categories.set(newCategory);
- }
-
- void unsetCategory(MessageCategory oldCategory) {
- categories.reset(oldCategory);
- }
-
- void setAllCategories() {
- categories.set();
- }
-
- void unsetAllCategories() {
- categories.reset();
- }
-
- bool isCategorySet(MessageCategory category) {
- return categories.test(category);
- }
-
- MessageLevel getLevel() const {
- return level;
- }
-
- void setLevel(MessageLevel newLevel) {
- level = newLevel;
- }
-
+ Logger() {}
virtual ~Logger() {}
};