50 using namespace std::placeholders;
51 asio::async_read(socket,
54 this, std::ref(socket), onComplete, _1, _2));
70 using namespace std::placeholders;
72 asio::async_write(socket,
75 this, onComplete, _1, _2));
80 const asio::error_code& ec, [[maybe_unused]]
size_t readLen)
83 std::cerr <<
"Msg error " << ec.message() <<
"\n";
84 onComplete(ec == asio::error::eof ?
90 size_t expectedSize = 0;
93 if(res.ec != std::errc()){
98 using namespace std::placeholders;
99 asio::async_read(socket,
102 this, onComplete, _1, _2));
107 const std::error_code& ec,
size_t readLen)
110 std::cerr <<
"Msg error: " << ec.message() <<
"\n";
111 onComplete(ec == asio::error::eof ?
122 const std::error_code& ec, [[maybe_unused]]
size_t sentLen)
std::string_view getStr() const
void async_readMsg(asio::ip::tcp::socket &socket, CompletionCallback onComplete)
void async_sendComplete(CompletionCallback onComplete, const std::error_code &ec, size_t sentLen)
void async_sendMsg(asio::ip::tcp::socket &socket, CompletionCallback onComplete)
static constexpr size_t bodySize
static constexpr size_t headerSize
void async_readBody(asio::ip::tcp::socket &socket, CompletionCallback onComplete, const std::error_code &ec, size_t readLen)
char data[headerSize+bodySize]
void setStr(std::string_view msg)
std::function< void(CompletionStatus)> CompletionCallback
void async_readBodyComplete(CompletionCallback onComplete, const std::error_code &ec, size_t readLen)