From 3897856fb7d887883f7b3c61143ce0b256c00ff8 Mon Sep 17 00:00:00 2001 From: w00t Date: Sat, 9 Feb 2008 11:35:27 +0000 Subject: Initial totally untested logger implementation that does nothing. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8856 e03df62e-2008-0410-955e-edbf42e46eb7 --- include/inspircd.h | 5 +---- include/logger.h | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+), 4 deletions(-) (limited to 'include') diff --git a/include/inspircd.h b/include/inspircd.h index 71a809be9..cc474dbfb 100644 --- a/include/inspircd.h +++ b/include/inspircd.h @@ -29,9 +29,6 @@ #include #include - -//#include -//#include #include "inspircd_config.h" #include "uid.h" #include "users.h" @@ -39,6 +36,7 @@ #include "timer.h" #include "hashcomp.h" #include "typedefs.h" +#include "logger.h" #include "usermanager.h" #include "socket.h" #include "ctables.h" @@ -49,7 +47,6 @@ #include "cull_list.h" #include "filelogger.h" #include "caller.h" -//#include "inspsocket.h" #include "modules.h" #include "configreader.h" #include "inspstring.h" diff --git a/include/logger.h b/include/logger.h index 5b8929d37..1e043f4f1 100644 --- a/include/logger.h +++ b/include/logger.h @@ -11,3 +11,38 @@ * --------------------------------------------------- */ +#ifndef __LOGMANAGER_H +#define __LOGMANAGER_H + +class CoreExport LogStream : public classbase +{ + private: + InspIRCd *ServerInstance; + std::string type; + public: + LogStream(InspIRCd *Instance, const std::string &type) + { + this->ServerInstance = Instance; + this->type = type; + } + + virtual void OnLog(int loglevel, const std::string &msg); +}; + +class CoreExport LogManager : public classbase +{ + private: + InspIRCd *ServerInstance; + std::map > LogStreams; + public: + LogManager(InspIRCd *Instance) + { + ServerInstance = Instance; + } + + bool AddLogType(const std::string &type, LogStream *l); + bool DelLogType(const std::string &type, LogStream *l); + void Log(const std::string &type, int loglevel, const std::string &msg); +}; + +#endif -- cgit v1.2.3