diff options
author | Matthias Schiffer <matthias@gamezock.de> | 2009-06-09 19:01:02 +0200 |
---|---|---|
committer | Matthias Schiffer <matthias@gamezock.de> | 2009-06-09 19:01:02 +0200 |
commit | 766c56a693e8b1bd4293459bb256abdc0515a0b5 (patch) | |
tree | da8e51003cf801344e22b0b2b2e28a48d6a8b74c /src/Net/Listener.cpp | |
parent | 452320b5ec31447a526735016fa07589cb848032 (diff) | |
download | mad-766c56a693e8b1bd4293459bb256abdc0515a0b5.tar mad-766c56a693e8b1bd4293459bb256abdc0515a0b5.zip |
Teile der Namespaces Common und Net in den neuen Namespace Core verschoben
Diffstat (limited to 'src/Net/Listener.cpp')
-rw-r--r-- | src/Net/Listener.cpp | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/src/Net/Listener.cpp b/src/Net/Listener.cpp index 6da2762..780e862 100644 --- a/src/Net/Listener.cpp +++ b/src/Net/Listener.cpp @@ -19,7 +19,8 @@ #include "Listener.h" -#include <Common/Logger.h> +#include <Core/Logger.h> +#include <Core/ThreadManager.h> #include <cerrno> #include <cstring> @@ -39,8 +40,8 @@ void Listener::handleAccept(const boost::system::error_code &error, boost::share con->_setState(Connection::CONNECT); - Signals::Connection con1 = con->connectSignalConnected(boost::bind(&Listener::handleConnect, this, con)); - Signals::Connection con2 = con->connectSignalDisconnected(boost::bind(&Listener::handleDisconnect, this, con)); + Core::Signals::Connection con1 = con->connectSignalConnected(boost::bind(&Listener::handleConnect, this, con)); + Core::Signals::Connection con2 = con->connectSignalDisconnected(boost::bind(&Listener::handleDisconnect, this, con)); connections.insert(std::make_pair(con, std::make_pair(con1, con2))); @@ -54,7 +55,7 @@ void Listener::handleAccept(const boost::system::error_code &error, boost::share void Listener::handleConnect(boost::shared_ptr<Connection> con) { { boost::lock_guard<boost::mutex> lock(mutex); - std::map<boost::shared_ptr<Connection>, std::pair<Signals::Connection, Signals::Connection> >::iterator it = connections.find(con); + std::map<boost::shared_ptr<Connection>, std::pair<Core::Signals::Connection, Core::Signals::Connection> >::iterator it = connections.find(con); if(it == connections.end()) return; @@ -76,9 +77,9 @@ void Listener::handleDisconnect(boost::shared_ptr<Connection> con) { Listener::Listener(const std::string &x905CertFile0, const std::string &x905KeyFile0, - const boost::asio::ip::tcp::endpoint &address0) throw(Exception) -: x905CertFile(x905CertFile0), x905KeyFile(x905KeyFile0), address(address0), acceptor(Connection::ioService, address), -sslContext(Connection::ioService, boost::asio::ssl::context::sslv23) + const boost::asio::ip::tcp::endpoint &address0) throw(Core::Exception) +: x905CertFile(x905CertFile0), x905KeyFile(x905KeyFile0), address(address0), acceptor(Core::ThreadManager::get()->getIOService(), address), +sslContext(Core::ThreadManager::get()->getIOService(), boost::asio::ssl::context::sslv23) { sslContext.set_options(boost::asio::ssl::context::default_workarounds | boost::asio::ssl::context::no_sslv2 @@ -93,9 +94,10 @@ sslContext(Connection::ioService, boost::asio::ssl::context::sslv23) } Listener::~Listener() { - for(std::map<boost::shared_ptr<Connection>,std::pair<Signals::Connection, Signals::Connection> >::iterator con = connections.begin(); con != connections.end(); ++con) { + for(std::map<boost::shared_ptr<Connection>,std::pair<Core::Signals::Connection, Core::Signals::Connection> >::iterator con = connections.begin(); con != connections.end(); ++con) { con->first->disconnect(); - // TODO wait... + con->first->waitWhileConnected(); + // TODO Optimize } } |