MySQL 26.7.0
Source Code Documentation
mysql::csa::Cached_event_payload Class Reference

Implementation of the IReader_event which keeps event raw payload until decoded. More...

#include <cached_event_payload.h>

Inheritance diagram for mysql::csa::Cached_event_payload:
[legend]

Public Member Functions

 Cached_event_payload (const Event_payload &payload, std::shared_ptr< Log_event > fde)
 Is constructed using payload data/metadata and associated fde. More...
 
std::shared_ptr< Log_eventdecode () override
 Decode function, which decodes payload and returns Log event smart pointer. More...
 
void reset (const Format_description_log_event *) override
 Resets event state. More...
 
- Public Member Functions inherited from mysql::csa::IReader_event
virtual ~IReader_event ()=default
 

Private Attributes

uint8_t * m_data
 Event data, owning pointer returned by the reader (legacy design) More...
 
std::size_t m_length
 Event length. More...
 
bool m_verify_checksum {false}
 Information on whether to verify checksum after decoding. More...
 
std::shared_ptr< Log_eventm_current_fde
 Owning pointer of the FDE base. More...
 
Format_description_log_eventm_fde_ptr
 Non-owning pointer to FDE. More...
 
Default_binlog_event_allocator m_allocator
 Allocator used to allocate event data in the reader, we use a separate object, since 'Default_binlog_event_allocator' methods do not use object state in any way. More...
 

Detailed Description

Implementation of the IReader_event which keeps event raw payload until decoded.

Constructor & Destructor Documentation

◆ Cached_event_payload()

mysql::csa::Cached_event_payload::Cached_event_payload ( const Event_payload payload,
std::shared_ptr< Log_event fde 
)

Is constructed using payload data/metadata and associated fde.

Parameters
payloadEvent payload data and metadata returned by the reader
fdeCurrent source's fde

Member Function Documentation

◆ decode()

std::shared_ptr< Log_event > mysql::csa::Cached_event_payload::decode ( )
overridevirtual

Decode function, which decodes payload and returns Log event smart pointer.

Returns
Log event smart pointer

Implements mysql::csa::IReader_event.

◆ reset()

void mysql::csa::Cached_event_payload::reset ( const Format_description_log_event )
overridevirtual

Resets event state.

Implements mysql::csa::IReader_event.

Member Data Documentation

◆ m_allocator

Default_binlog_event_allocator mysql::csa::Cached_event_payload::m_allocator
private

Allocator used to allocate event data in the reader, we use a separate object, since 'Default_binlog_event_allocator' methods do not use object state in any way.

◆ m_current_fde

std::shared_ptr<Log_event> mysql::csa::Cached_event_payload::m_current_fde
private

Owning pointer of the FDE base.

◆ m_data

uint8_t* mysql::csa::Cached_event_payload::m_data
private

Event data, owning pointer returned by the reader (legacy design)

◆ m_fde_ptr

Format_description_log_event* mysql::csa::Cached_event_payload::m_fde_ptr
private

Non-owning pointer to FDE.

◆ m_length

std::size_t mysql::csa::Cached_event_payload::m_length
private

Event length.

◆ m_verify_checksum

bool mysql::csa::Cached_event_payload::m_verify_checksum {false}
private

Information on whether to verify checksum after decoding.


The documentation for this class was generated from the following files: