diff options
author | Adam <Adam@anope.org> | 2011-08-25 16:21:21 -0400 |
---|---|---|
committer | Adam <Adam@anope.org> | 2011-09-10 01:58:38 -0400 |
commit | f025d1b495cee3aadb6b7b45652d1cab3b7b7b6d (patch) | |
tree | 02df5a3f12104996af87d1b6c5ec9db9d45b6bde /src | |
parent | 8c4417cad180f3c5448c5b7509b1bf2235e3077e (diff) |
Made service_reference type safe
Diffstat (limited to 'src')
-rw-r--r-- | src/access.cpp | 2 | ||||
-rw-r--r-- | src/command.cpp | 2 | ||||
-rw-r--r-- | src/config.cpp | 2 | ||||
-rw-r--r-- | src/modulemanager.cpp | 44 | ||||
-rw-r--r-- | src/modules.cpp | 9 | ||||
-rw-r--r-- | src/operserv.cpp | 2 |
6 files changed, 3 insertions, 58 deletions
diff --git a/src/access.cpp b/src/access.cpp index 9eb014b56..b9b3e1e9a 100644 --- a/src/access.cpp +++ b/src/access.cpp @@ -19,7 +19,7 @@ enum ACCESS_FOUNDER = 10001 }; -AccessProvider::AccessProvider(Module *o, const Anope::string &n) : Service(o, n) +AccessProvider::AccessProvider(Module *o, const Anope::string &n) : Service<AccessProvider>(o, n) { } diff --git a/src/command.cpp b/src/command.cpp index 8a564e91a..e9da36ac2 100644 --- a/src/command.cpp +++ b/src/command.cpp @@ -55,7 +55,7 @@ void CommandSource::DoReply() } } -Command::Command(Module *o, const Anope::string &sname, size_t min_params, size_t max_params) : Service(o, sname), Flags<CommandFlag>(CommandFlagStrings), MaxParams(max_params), MinParams(min_params), module(owner) +Command::Command(Module *o, const Anope::string &sname, size_t min_params, size_t max_params) : Service<Command>(o, sname), Flags<CommandFlag>(CommandFlagStrings), MaxParams(max_params), MinParams(min_params), module(owner) { } diff --git a/src/config.cpp b/src/config.cpp index bf32bce5f..28a0b6a9c 100644 --- a/src/config.cpp +++ b/src/config.cpp @@ -108,8 +108,6 @@ ServerConfig::ServerConfig() : config_data(), NSDefFlags(NickCoreFlagStrings), C this->CSDefFlags.SetFlag(CI_SIGNKICK); else if (option.equals_ci("signkicklevel")) this->CSDefFlags.SetFlag(CI_SIGNKICK_LEVEL); - else if (option.equals_ci("opnotice")) - this->CSDefFlags.SetFlag(CI_OPNOTICE); else if (option.equals_ci("peace")) this->CSDefFlags.SetFlag(CI_PEACE); else if (option.equals_ci("persist")) diff --git a/src/modulemanager.cpp b/src/modulemanager.cpp index b2907e467..d42bc7d75 100644 --- a/src/modulemanager.cpp +++ b/src/modulemanager.cpp @@ -9,7 +9,6 @@ #include "modules.h" #include <algorithm> // std::find -std::map<Anope::string, Service *> ModuleManager::ServiceProviders; std::vector<Module *> ModuleManager::EventHandlers[I_END]; void ModuleManager::CleanupRuntimeDirectory() @@ -498,46 +497,3 @@ void ModuleManager::UnloadAll() } } -/** Register a service - * @oaram s The service - * @return true if it was successfully registeed, else false (service name colision) - */ -bool ModuleManager::RegisterService(Service *s) -{ - return ModuleManager::ServiceProviders.insert(std::make_pair(s->name, s)).second; -} - -/** Unregister a service - * @param s The service - * @return true if it was unregistered successfully - */ -bool ModuleManager::UnregisterService(Service *s) -{ - return ModuleManager::ServiceProviders.erase(s->name); -} - -/** Get a service - * @param name The service name - * @param s The service - * @return The service - */ -Service *ModuleManager::GetService(const Anope::string &name) -{ - std::map<Anope::string, Service *>::const_iterator it = ModuleManager::ServiceProviders.find(name); - - if (it != ModuleManager::ServiceProviders.end()) - return it->second; - return NULL; -} - -/** Get the existing service key names - * @return The keys - */ -std::vector<Anope::string> ModuleManager::GetServiceKeys() -{ - std::vector<Anope::string> keys; - for (std::map<Anope::string, Service *>::const_iterator it = ModuleManager::ServiceProviders.begin(), it_end = ModuleManager::ServiceProviders.end(); it != it_end; ++it) - keys.push_back(it->first); - return keys; -} - diff --git a/src/modules.cpp b/src/modules.cpp index 241054715..84ef6bcb8 100644 --- a/src/modules.cpp +++ b/src/modules.cpp @@ -65,12 +65,3 @@ std::vector<Message *> Anope::FindMessage(const Anope::string &name) return messages; } -Service::Service(Module *o, const Anope::string &n) : owner(o), name(n) -{ -} - -Service::~Service() -{ - ModuleManager::UnregisterService(this); -} - diff --git a/src/operserv.cpp b/src/operserv.cpp index 2eb616aad..b17f9e0ad 100644 --- a/src/operserv.cpp +++ b/src/operserv.cpp @@ -68,7 +68,7 @@ sockaddrs XLine::GetIP() const /** Constructor */ -XLineManager::XLineManager(Module *creator, const Anope::string &xname, char t) : Service(creator, xname), type(t) +XLineManager::XLineManager(Module *creator, const Anope::string &xname, char t) : Service<XLineManager>(creator, xname), type(t) { } |