From 031615ac866cc3c8f1900dd4b4aae2106ad31230 Mon Sep 17 00:00:00 2001 From: ipknHama Date: Thu, 7 Aug 2014 01:18:33 +0900 Subject: source resturcturing + CMake --- http_server.h | 81 ----------------------------------------------------------- 1 file changed, 81 deletions(-) delete mode 100644 http_server.h (limited to 'http_server.h') diff --git a/http_server.h b/http_server.h deleted file mode 100644 index 9381fdb..0000000 --- a/http_server.h +++ /dev/null @@ -1,81 +0,0 @@ -#pragma once - -#include -#include -#include - -#include - -#include "http_connection.h" -#include "datetime.h" -#include "logging.h" - -namespace crow -{ - using namespace boost; - using tcp = asio::ip::tcp; - - template - class Server - { - public: - Server(Handler* handler, uint16_t port, uint16_t concurrency = 1) - : acceptor_(io_service_, tcp::endpoint(asio::ip::address(), port)), - socket_(io_service_), - signals_(io_service_, SIGINT, SIGTERM), - handler_(handler), - concurrency_(concurrency), - port_(port) - { - do_accept(); - } - - void run() - { - std::vector> v; - for(uint16_t i = 0; i < concurrency_; i ++) - v.push_back( - std::async(std::launch::async, [this]{io_service_.run();}) - ); - - CROW_LOG_INFO << server_name_ << " server is running, local port " << port_; - - signals_.async_wait( - [&](const boost::system::error_code& error, int signal_number){ - io_service_.stop(); - }); - - } - - void stop() - { - io_service_.stop(); - } - - private: - void do_accept() - { - acceptor_.async_accept(socket_, - [this](boost::system::error_code ec) - { - if (!ec) - { - auto p = std::make_shared>(std::move(socket_), handler_, server_name_); - p->start(); - } - do_accept(); - }); - } - - private: - asio::io_service io_service_; - tcp::acceptor acceptor_; - tcp::socket socket_; - boost::asio::signal_set signals_; - - Handler* handler_; - uint16_t concurrency_{1}; - std::string server_name_ = "Crow/0.1"; - uint16_t port_; - }; -} -- cgit v1.2.3-54-g00ecf