diff options
author | Vincent Richard <[email protected]> | 2013-11-21 21:16:57 +0000 |
---|---|---|
committer | Vincent Richard <[email protected]> | 2013-11-21 21:16:57 +0000 |
commit | f9913fa28a27f23fde2d4956c62cbb2fb2bc2ee8 (patch) | |
tree | 2bdc90e361a8f6e0a81164cf67afec9f78f9b959 /src/net/serviceFactory.cpp | |
parent | Per-protocol include files. (diff) | |
download | vmime-f9913fa28a27f23fde2d4956c62cbb2fb2bc2ee8.tar.gz vmime-f9913fa28a27f23fde2d4956c62cbb2fb2bc2ee8.zip |
Boost/C++11 shared pointers.
Diffstat (limited to 'src/net/serviceFactory.cpp')
-rw-r--r-- | src/net/serviceFactory.cpp | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/src/net/serviceFactory.cpp b/src/net/serviceFactory.cpp index c44cbadc..a16098ce 100644 --- a/src/net/serviceFactory.cpp +++ b/src/net/serviceFactory.cpp @@ -49,26 +49,26 @@ serviceFactory::~serviceFactory() } -serviceFactory* serviceFactory::getInstance() +shared_ptr <serviceFactory> serviceFactory::getInstance() { static serviceFactory instance; - return (&instance); + return shared_ptr <serviceFactory>(&instance, noop_shared_ptr_deleter <serviceFactory>()); } -ref <service> serviceFactory::create - (ref <session> sess, const string& protocol, - ref <security::authenticator> auth) +shared_ptr <service> serviceFactory::create + (shared_ptr <session> sess, const string& protocol, + shared_ptr <security::authenticator> auth) { return (getServiceByProtocol(protocol)->create(sess, auth)); } -ref <service> serviceFactory::create - (ref <session> sess, const utility::url& u, - ref <security::authenticator> auth) +shared_ptr <service> serviceFactory::create + (shared_ptr <session> sess, const utility::url& u, + shared_ptr <security::authenticator> auth) { - ref <service> serv = create(sess, u.getProtocol(), auth); + shared_ptr <service> serv = create(sess, u.getProtocol(), auth); sess->getProperties()[serv->getInfos().getPropertyPrefix() + "server.address"] = u.getHost(); @@ -90,11 +90,11 @@ ref <service> serviceFactory::create } -ref <const serviceFactory::registeredService> serviceFactory::getServiceByProtocol(const string& protocol) const +shared_ptr <const serviceFactory::registeredService> serviceFactory::getServiceByProtocol(const string& protocol) const { const string name(utility::stringUtils::toLower(protocol)); - for (std::vector <ref <registeredService> >::const_iterator it = m_services.begin() ; + for (std::vector <shared_ptr <registeredService> >::const_iterator it = m_services.begin() ; it != m_services.end() ; ++it) { if ((*it)->getName() == name) @@ -111,17 +111,17 @@ size_t serviceFactory::getServiceCount() const } -ref <const serviceFactory::registeredService> serviceFactory::getServiceAt(const size_t pos) const +shared_ptr <const serviceFactory::registeredService> serviceFactory::getServiceAt(const size_t pos) const { return (m_services[pos]); } -const std::vector <ref <const serviceFactory::registeredService> > serviceFactory::getServiceList() const +const std::vector <shared_ptr <const serviceFactory::registeredService> > serviceFactory::getServiceList() const { - std::vector <ref <const registeredService> > res; + std::vector <shared_ptr <const registeredService> > res; - for (std::vector <ref <registeredService> >::const_iterator it = m_services.begin() ; + for (std::vector <shared_ptr <registeredService> >::const_iterator it = m_services.begin() ; it != m_services.end() ; ++it) { res.push_back(*it); @@ -131,7 +131,7 @@ const std::vector <ref <const serviceFactory::registeredService> > serviceFactor } -void serviceFactory::registerService(ref <registeredService> reg) +void serviceFactory::registerService(shared_ptr <registeredService> reg) { m_services.push_back(reg); } |