20 #include <ripple/overlay/Message.h>
21 #include <ripple/overlay/impl/TrafficCount.h>
27 ::google::protobuf::Message
const& message,
29 boost::optional<PublicKey>
const& validator)
30 : category_(
TrafficCount::categorize(message, type, false))
31 , validatorKey_(validator)
37 assert(messageBytes != 0);
43 if (messageBytes != 0)
53 #if defined(GOOGLE_PROTOBUF_VERSION) && (GOOGLE_PROTOBUF_VERSION >= 3011000)
54 return message.ByteSizeLong();
56 return message.ByteSize();
75 bool const compressible = [&] {
76 if (messageBytes <= 70)
80 case protocol::mtMANIFESTS:
81 case protocol::mtENDPOINTS:
82 case protocol::mtTRANSACTION:
83 case protocol::mtGET_LEDGER:
84 case protocol::mtLEDGER_DATA:
85 case protocol::mtGET_OBJECTS:
86 case protocol::mtVALIDATORLIST:
87 case protocol::mtVALIDATORLISTCOLLECTION:
88 case protocol::mtREPLAY_DELTA_RESPONSE:
90 case protocol::mtPING:
91 case protocol::mtCLUSTER:
92 case protocol::mtPROPOSE_LEDGER:
93 case protocol::mtSTATUS_CHANGE:
94 case protocol::mtHAVE_SET:
95 case protocol::mtVALIDATION:
96 case protocol::mtGET_SHARD_INFO:
97 case protocol::mtSHARD_INFO:
98 case protocol::mtGET_PEER_SHARD_INFO:
99 case protocol::mtPEER_SHARD_INFO:
100 case protocol::mtPROOF_PATH_REQ:
101 case protocol::mtPROOF_PATH_RESPONSE:
102 case protocol::mtREPLAY_DELTA_REQ:
183 (size >> 24) & 0x0F);
189 pack(
in, payloadBytes);
194 if (compression != Algorithm::None)
196 pack(
in, uncompressedBytes);
224 int type = (
static_cast<int>(*(
in + 4)) << 8) + *(
in + 5);