int32 handle_service_response(const std::string& resp) { int32 ret = 0; ServiceResponse svresp; if(!svresp.ParseFromString(resp)) { LOG_OUT << "cid:" << m_cid << " handle_service_response ParseFromString fail\n"; return -1; } switch(svresp.svtype()) { case 200: ret = handle_peer_response(svresp.payload()); } if(svresp.status()) { LOG_OUT << "cid:" << m_cid << " handle_service_response fail, status:" << svresp.status() << std::endl; } else { std::stringstream os; if(lastSn() == svresp.sn()) { ++success_count; } else { LOG_OUT << "SN_ERROR, cid:" << m_cid << " service_resp resp sn:" << svresp.sn() << " req sn:" << lastSn() << std::endl; } } ++m_sn; return 0; }
int32 parse_service_resp(const std::string& resp, ServiceResponse& svresp) { return svresp.ParseFromString(resp); }