McServerTransaction::McServerTransaction( std::shared_ptr<McServerSession> session, McRequest&& request, mc_op_t operation, uint64_t reqid, bool isMultiget, bool isSubRequest, bool noreply) : session_(std::move(session)), request_(std::move(request)), operation_(operation), reqid_(reqid), appContext_(*this), noReply_(noreply || (operation == mc_op_quit)), isMultiget_(isMultiget), isSubRequest_(isSubRequest) { mc_msg_init_not_refcounted(&replyMsg_); um_backing_msg_init(&umMsg_); mc_ascii_response_buf_init(&asciiResponse_); assert(!(isMultiget_ && isSubRequest)); session_->onTransactionStarted(isSubRequest_); }
void WriteBuffer::clear() { ctx_.clear(); reply_.clear(); um_backing_msg_cleanup(&umMsg_); um_backing_msg_init(&umMsg_); mc_ascii_response_buf_cleanup(&asciiResponse_); mc_ascii_response_buf_init(&asciiResponse_); }
void AsciiSerializedReply::clear() { mc_ascii_response_buf_cleanup(&asciiResponse_); mc_ascii_response_buf_init(&asciiResponse_); }
AsciiSerializedReply::AsciiSerializedReply() { mc_ascii_response_buf_init(&asciiResponse_); }
WriteBuffer::WriteBuffer() { mc_msg_init_not_refcounted(&replyMsg_); um_backing_msg_init(&umMsg_); mc_ascii_response_buf_init(&asciiResponse_); }