summaryrefslogtreecommitdiff
path: root/src/logger/logger_set.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/logger/logger_set.hpp')
-rw-r--r--src/logger/logger_set.hpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/logger/logger_set.hpp b/src/logger/logger_set.hpp
new file mode 100644
index 0000000..e482042
--- /dev/null
+++ b/src/logger/logger_set.hpp
@@ -0,0 +1,25 @@
+#pragma once
+
+#include <string>
+#include <list>
+
+#include "types/ilogger.hpp"
+
+namespace smtp::logger
+{
+ class LoggerSet
+ {
+ private:
+ explicit LoggerSet( std::list < types::ILoggerPtr > const& logger );
+ static void BuildLogger();
+
+ static std::shared_ptr < LoggerSet > mInstance;
+ std::list < types::ILoggerPtr > mLogger;
+ public:
+ LoggerSet( const LoggerSet& ) = delete;
+ LoggerSet& operator=( LoggerSet& ) = delete;
+
+ void LogError( std::string const& method, std::string const& message );
+ static std::shared_ptr < LoggerSet > GetInstance();
+ };
+}