|
enum | enum_cargo_type {
CT_UNKNOWN = 0
, CT_CERTIFICATION_MESSAGE = 1
, CT_TRANSACTION_MESSAGE = 2
, CT_RECOVERY_MESSAGE = 3
,
CT_MEMBER_INFO_MESSAGE = 4
, CT_MEMBER_INFO_MANAGER_MESSAGE = 5
, CT_PIPELINE_STATS_MEMBER_MESSAGE = 6
, CT_SINGLE_PRIMARY_MESSAGE = 7
,
CT_GROUP_ACTION_MESSAGE = 8
, CT_GROUP_VALIDATION_MESSAGE = 9
, CT_SYNC_BEFORE_EXECUTION_MESSAGE = 10
, CT_TRANSACTION_WITH_GUARANTEE_MESSAGE = 11
,
CT_TRANSACTION_PREPARED_MESSAGE = 12
, CT_MESSAGE_SERVICE_MESSAGE = 13
, CT_RECOVERY_METADATA_MESSAGE = 14
, CT_MAX = 15
} |
| The different cargo type codes. More...
|
|
static enum_cargo_type | get_cargo_type (const unsigned char *buffer) |
| Return the cargo type of a given message buffer, without decode the complete message. More...
|
|
static void | get_first_payload_item_raw_data (const unsigned char *buffer, const unsigned char **payload_item_data, size_t *payload_item_length) |
| Return the raw data of the first payload item of a given message buffer, without decode the complete message. More...
|
|
static bool | get_payload_item_type_raw_data (const unsigned char *buffer, const unsigned char *end, uint16 payload_item_type, const unsigned char **payload_item_data, unsigned long long *payload_item_length) |
| Return the raw data of the payload item of a given payload type of a given message buffer. More...
|
|
static const int | PLUGIN_GCS_MESSAGE_VERSION = 1 |
| The protocol version number. More...
|
|
static const unsigned int | WIRE_VERSION_SIZE = 4 |
| The protocol version number. More...
|
|
static const unsigned int | WIRE_HD_LEN_SIZE = 2 |
| The on-the-wire size of the header length field. More...
|
|
static const unsigned int | WIRE_MSG_LEN_SIZE = 8 |
| The on-the-wire size of the message size field. More...
|
|
static const unsigned int | WIRE_CARGO_TYPE_SIZE = 2 |
| The on-the-wire size of the cargo type field. More...
|
|
static const unsigned int | WIRE_FIXED_HEADER_SIZE |
| The on-the-wire size of the fixed header. More...
|
|
static const unsigned int | WIRE_PAYLOAD_ITEM_TYPE_SIZE = 2 |
| The on-the-wire size of the each payload item type field. More...
|
|
static const unsigned int | WIRE_PAYLOAD_ITEM_LEN_SIZE = 8 |
| The on-the-wire size of the each payload item size field. More...
|
|
static const unsigned int | WIRE_PAYLOAD_ITEM_HEADER_SIZE |
| The on-the-wire size of the payload item header. More...
|
|
| Plugin_gcs_message (enum_cargo_type cargo_type) |
| Plugin_gcs_message constructor. More...
|
|
void | encode_header (std::vector< unsigned char > *buffer) const |
| Encodes the header of this instance into the buffer. More...
|
|
void | decode_header (const unsigned char **slider) |
| Decodes the header of the buffer into this instance. More...
|
|
virtual void | encode_payload (std::vector< unsigned char > *buffer) const =0 |
| Encodes the contents of this instance payload into the buffer. More...
|
|
virtual void | decode_payload (const unsigned char *buffer, const unsigned char *end)=0 |
| Decodes the contents of the buffer and sets the payload field values according to the values decoded. More...
|
|
void | encode_payload_item_type_and_length (std::vector< unsigned char > *buffer, uint16 payload_item_type, unsigned long long payload_item_length) const |
| Encodes the given payload item type and length into the buffer. More...
|
|
void | encode_payload_item_char (std::vector< unsigned char > *buffer, uint16 type, unsigned char value) const |
| Encodes the given payload item (type, length and value) into the buffer as a char (1 byte). More...
|
|
void | encode_payload_item_int2 (std::vector< unsigned char > *buffer, uint16 type, uint16 value) const |
| Encodes the given payload item (type, length and value) into the buffer as a 2 bytes integer. More...
|
|
void | decode_payload_item_int2 (const unsigned char **buffer, uint16 *type, uint16 *value) |
| Decodes the given payload item (type, length and value) from the buffer as a 2 bytes integer. More...
|
|
void | encode_payload_item_int4 (std::vector< unsigned char > *buffer, uint16 type, uint32 value) const |
| Encodes the given payload item (type, length and value) into the buffer as a 4 bytes integer. More...
|
|
void | decode_payload_item_int4 (const unsigned char **buffer, uint16 *type, uint32 *value) |
| Decodes the given payload item (type, length and value) from the buffer as a 4 bytes integer. More...
|
|
void | encode_payload_item_int8 (std::vector< unsigned char > *buffer, uint16 type, ulonglong value) const |
| Encodes the given payload item (type, length and value) into the buffer as a 8 bytes integer. More...
|
|
void | encode_payload_item_string (std::vector< unsigned char > *buffer, uint16 type, const char *value, unsigned long long length) const |
| Encodes the given payload item (type, length and value) into the buffer as a char array (variable size). More...
|
|
void | decode_payload_item_string (const unsigned char **buffer, uint16 *type, std::string *value, unsigned long long *length) |
| Decodes the given payload item (type, length and value) from the buffer as a char array (variable size). More...
|
|
void | encode_payload_item_bytes (std::vector< unsigned char > *buffer, uint16 type, const unsigned char *value, unsigned long long length) const |
| Encodes the given payload item (type, length and value) into the buffer as a byte buffer (variable size). More...
|
|
void | decode_payload_item_bytes (const unsigned char **buffer, uint16 *type, unsigned char *value, unsigned long long *length) |
| Decodes the given payload item (type, length and value) from the buffer as a byte buffer (variable size). More...
|
|
static int64_t | get_sent_timestamp (const unsigned char *buffer, size_t length, const uint16 timestamp_payload_item_type) |
| Return the time at which the message contained in the buffer was sent. More...
|
|
static void | decode_payload_item_type_and_length (const unsigned char **buffer, uint16 *payload_item_type, unsigned long long *payload_item_length) |
| Decodes the given payload item type and length from the buffer. More...
|
|
static void | decode_payload_item_char (const unsigned char **buffer, uint16 *type, unsigned char *value) |
| Decodes the given payload item (type, length and value) from the buffer as a char (1 byte). More...
|
|
static void | decode_payload_item_int8 (const unsigned char **buffer, uint16 *type, uint64 *value) |
| Decodes the given payload item (type, length and value) from the buffer as a 8 bytes integer. More...
|
|