24#ifndef MYSQL_BINLOG_EVENT_CODECS_BINARY_H
25#define MYSQL_BINLOG_EVENT_CODECS_BINARY_H
41 std::pair<std::size_t, bool>
decode(
const unsigned char *from,
46 std::size_t
size)
const override = 0;
69 OTW_PAYLOAD_HEADER_END_MARK = 0,
72 OTW_PAYLOAD_SIZE_FIELD = 1,
75 OTW_PAYLOAD_COMPRESSION_TYPE_FIELD = 2,
78 OTW_PAYLOAD_UNCOMPRESSED_SIZE_FIELD = 3,
96 std::pair<std::size_t, bool>
decode(
const unsigned char *from,
114 std::size_t
size)
const override;
127 OTW_HB_HEADER_END_MARK = 0,
130 OTW_HB_LOG_FILENAME_FIELD = 1,
133 OTW_HB_LOG_POSITION_FIELD = 2,
151 std::pair<std::size_t, bool>
decode(
const unsigned char *from,
169 std::size_t
size)
const override;
175namespace [[deprecated]] codecs {
This is the abstract base class for binary log events.
Definition: binlog_event.h:851
Event_reader class purpose is to avoid out-of-buffer reads when deserializing binary log events and i...
Definition: event_reader.h:74
This is the abstract and base class for binary log codecs.
Definition: base.h:38
This is the abstract and base class for binary log BINARY codecs.
Definition: binary.h:35
std::pair< std::size_t, bool > encode(const Binary_log_event &from, unsigned char *to, std::size_t size) const override=0
Member function that shall encode the contents of the given binary log event into an in memory buffer...
std::pair< std::size_t, bool > decode(const unsigned char *from, std::size_t size, Binary_log_event &to) const override=0
Member function that shall decode the contents of the given buffer into a binary log event.
Event_reader * m_reader
Definition: binary.h:37
Base_codec(Base_codec &&) noexcept=default
Event_reader & reader()
Definition: binary.h:38
Binary codec for the heartbeat log event.
Definition: binary.h:120
fields
The on-the-wire fields.
Definition: binary.h:125
Heartbeat()
Definition: binary.h:138
Binary codec for the transaction payload log event.
Definition: binary.h:62
Transaction_payload()=default
fields
The on-the-wire fields.
Definition: binary.h:67
constexpr value_type binary
Definition: classic_protocol_constants.h:275
Definition: binary.cpp:29
size_t size(const char *const c)
Definition: base64.h:46