summaryrefslogtreecommitdiffstats
path: root/src/Common/ConfigManager.h
diff options
context:
space:
mode:
authorMatthias Schiffer <matthias@gamezock.de>2008-09-14 23:16:58 +0200
committerMatthias Schiffer <matthias@gamezock.de>2008-09-14 23:16:58 +0200
commit082dac7a8cb39ec1b005680680c4f3e1e8ddc256 (patch)
tree1db7b02d84cdd1882e15d3a1abfd8e93925a4af6 /src/Common/ConfigManager.h
parentfd9b1506a3b3858235e91cce45805f6d54caae4f (diff)
downloadmad-082dac7a8cb39ec1b005680680c4f3e1e8ddc256.tar
mad-082dac7a8cb39ec1b005680680c4f3e1e8ddc256.zip
Verwende statische Instanzen von ConfigManager, ConnectionManager und RequestManager (Singleton)
Diffstat (limited to 'src/Common/ConfigManager.h')
-rw-r--r--src/Common/ConfigManager.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/Common/ConfigManager.h b/src/Common/ConfigManager.h
index 5c94614..91126ca 100644
--- a/src/Common/ConfigManager.h
+++ b/src/Common/ConfigManager.h
@@ -22,16 +22,24 @@
#include <string>
#include <vector>
+#include <memory>
namespace Mad {
namespace Common {
class ConfigManager {
+ private:
+ static std::auto_ptr<ConfigManager> configManager;
+
protected:
ConfigManager() {
initBackends();
}
+ static void setConfigManager(ConfigManager *configManager0) {
+ configManager = std::auto_ptr<ConfigManager>(configManager0);
+ }
+
virtual bool parseLine(const std::vector<std::string> &section, const std::string &key, const std::string &value = std::string()) = 0;
bool loadFile(const std::string &filename);
@@ -40,6 +48,10 @@ class ConfigManager {
public:
virtual ~ConfigManager() {}
+
+ static ConfigManager *getConfigManager() {
+ return configManager.get();
+ }
};
}