summaryrefslogtreecommitdiff
path: root/server/tcpserver.h
diff options
context:
space:
mode:
authorVegard Storheil Eriksen <zyp@sakuya.local>2010-11-06 02:35:39 +0100
committerVegard Storheil Eriksen <zyp@sakuya.local>2010-11-06 02:35:39 +0100
commitcfef24ce8541ac3934ecfe7248a33d1099d94dfa (patch)
tree4335e25b6fd490fa8744fed82aa7273fc7a72395 /server/tcpserver.h
parentdf5932614261a825fb5a9283c321f47f7a198b24 (diff)
First take on abstract ConnectionBase, ASIO listening and connection handling.
Diffstat (limited to 'server/tcpserver.h')
-rw-r--r--server/tcpserver.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/server/tcpserver.h b/server/tcpserver.h
new file mode 100644
index 0000000..5d0cbba
--- /dev/null
+++ b/server/tcpserver.h
@@ -0,0 +1,22 @@
+#ifndef TCPSERVER_H
+#define TCPSERVER_H
+
+#include <boost/asio.hpp>
+
+#include "connection.h"
+
+class TCPServer {
+ private:
+ boost::asio::ip::tcp::acceptor acceptor_;
+
+ //! Listen for incoming connection.
+ void listen();
+
+ //! Handle new connection.
+ void handle_connection(Connection::p connection, const boost::system::error_code& error);
+
+ public:
+ TCPServer(boost::asio::io_service& io_service);
+};
+
+#endif