void Client::OnConnect(ConnectionPointer conn, const boost::system::error_code& error, tcp::resolver::iterator it) { if (connectHandler != nullptr) { connectHandler(conn); conn->BeginReceive(); } }
void AsyncMockStreamFactory::MockStream::connect(asio::ip::tcp::resolver::iterator endpoints, ConnectHandler&& connectHandler) { // Suspend execution after "connecting" _defer(kBlockedBeforeConnect, [this, connectHandler, endpoints]() { _io_service->post( [connectHandler, endpoints] { connectHandler(std::error_code()); }); }); }
void AsyncMockStreamFactory::MockStream::connect(asio::ip::tcp::resolver::iterator endpoints, ConnectHandler&& connectHandler) { // Suspend execution after "connecting" _defer(kBlockedBeforeConnect, [this, connectHandler, endpoints]() { stdx::unique_lock<stdx::mutex> lk(_mutex); // We shim a lambda to give connectHandler the right signature since it doesn't take // a size_t param. checkCanceled( _io_service, &_state, [connectHandler](std::error_code ec, std::size_t) { return connectHandler(ec); }, 0); }); }