#include "client_session.h" #include #include client_session::client_session(QObject *parent, boost::asio::io_service *io_service) : QObject(parent), io_service_(*io_service), socket_(*io_service) { } tcp::socket& client_session::socket() { return socket_; } void client_session::connect(std::string &host, int port) { //TODO: settings for connection timeout boost::asio::ip::tcp::resolver r(io_service_); boost::asio::ip::tcp::endpoint ep; ep.port(port); ep.address(boost::asio::ip::address::from_string(host)); socket_.async_connect(ep, boost::bind(&client_session::connect_handler, this, boost::asio::placeholders::error)); } void client_session::connect_handler(const boost::system::error_code &e) { BOOST_LOG_TRIVIAL(debug)<<__FILE__<<":"<<__LINE__<<"\t"<