Adbase
Adinf C++ base library V2
|
#include <ClientHandler.hpp>
Public Member Functions | |
ClientHandler (EventBasePtr &base, const std::string &hostname, int port, Timer *timer, bool isRetry=false) | |
~ClientHandler () | |
void | onConnection (const TcpConnectionPtr &conn) |
void | onMessage (const TcpConnectionPtr &conn, evbuffer *evbuf, Timestamp reciveTime) |
void | setGetCallback (const GetCallback &cb) |
void | start () |
void | stop () |
bool | get (const std::string &key) |
void | disableBinary () |
Definition at line 21 of file ClientHandler.hpp.
adbase::mc::ClientHandler::ClientHandler | ( | EventBasePtr & | base, |
const std::string & | hostname, | ||
int | port, | ||
Timer * | timer, | ||
bool | isRetry = false |
||
) |
Definition at line 8 of file ClientHandler.cpp.
adbase::mc::ClientHandler::~ClientHandler | ( | ) |
Definition at line 45 of file ClientHandler.cpp.
|
inline |
Definition at line 36 of file ClientHandler.hpp.
bool adbase::mc::ClientHandler::get | ( | const std::string & | key | ) |
Definition at line 85 of file ClientHandler.cpp.
References adbase::Buffer::append(), adbase::mc::ProtocolBinaryRequestHeader::bodylen, adbase::mc::ProtocolBinaryResponseHeader::bodylen, adbase::mc::ProtocolBinaryRequestHeader::bytes, adbase::explode(), adbase::mc::ProtocolBinaryResponseHeader::extlen, adbase::hostToNetwork16(), adbase::hostToNetwork32(), adbase::mc::ProtocolBinaryRequestHeader::keylen, adbase::mc::ProtocolBinaryResponseHeader::keylen, LOG_ERROR, LOG_TRACE, adbase::mc::ProtocolBinaryRequestHeader::magic, adbase::networkToHost16(), adbase::networkToHost32(), adbase::mc::ProtocolBinaryRequestHeader::opcode, adbase::mc::ProtocolBinaryResponseHeader::opcode, adbase::mc::PROTOCOL_BINARY_CMD_GET, adbase::mc::PROTOCOL_BINARY_REQ, adbase::Buffer::readableBytes(), adbase::mc::ProtocolBinaryRequestHeader::request, adbase::mc::ProtocolBinaryResponseHeader::response, adbase::Buffer::retrieveAll(), and adbase::Buffer::retrieveAllAsString().
void adbase::mc::ClientHandler::onConnection | ( | const TcpConnectionPtr & | conn | ) |
Definition at line 55 of file ClientHandler.cpp.
References LOG_DEBUG, LOG_TRACE, adbase::Buffer::peek(), adbase::Buffer::readableBytes(), and adbase::Buffer::retrieveAll().
Referenced by start().
void adbase::mc::ClientHandler::onMessage | ( | const TcpConnectionPtr & | conn, |
evbuffer * | evbuf, | ||
Timestamp | reciveTime | ||
) |
Definition at line 70 of file ClientHandler.cpp.
References LOG_DEBUG, and adbase::Timestamp::toString().
Referenced by start().
|
inline |
Definition at line 28 of file ClientHandler.hpp.
void adbase::mc::ClientHandler::start | ( | ) |
Definition at line 24 of file ClientHandler.cpp.
References adbase::TcpClient::connect(), adbase::TcpClient::enableRetry(), onConnection(), onMessage(), adbase::TcpClient::setConnectionCallback(), and adbase::TcpClient::setMessageCallback().
Referenced by setGetCallback().
void adbase::mc::ClientHandler::stop | ( | ) |
Definition at line 38 of file ClientHandler.cpp.
References adbase::TcpClient::stop().
Referenced by setGetCallback().