From 56d36ddf928c4000662effb40cf5fa825ee37556 Mon Sep 17 00:00:00 2001 From: eidheim Date: Wed, 23 Nov 2016 09:13:55 +0100 Subject: [PATCH] Related to #86: added Client::close method --- client_http.hpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/client_http.hpp b/client_http.hpp index a9b6344..0b2d7ef 100644 --- a/client_http.hpp +++ b/client_http.hpp @@ -148,6 +148,14 @@ namespace SimpleWeb { return request_read(); } + void close() { + if(socket) { + boost::system::error_code ec; + socket->lowest_layer().shutdown(boost::asio::ip::tcp::socket::shutdown_both, ec); + socket->lowest_layer().close(); + } + } + protected: boost::asio::io_service io_service; boost::asio::ip::tcp::endpoint endpoint; @@ -182,9 +190,7 @@ namespace SimpleWeb { timer->expires_from_now(boost::posix_time::seconds(config.timeout)); timer->async_wait([this](const boost::system::error_code& ec) { if(!ec) { - boost::system::error_code ec; - socket->lowest_layer().shutdown(boost::asio::ip::tcp::socket::shutdown_both, ec); - socket->lowest_layer().close(); + close(); } }); return timer;