25#ifndef MYSQLD_MOCK_X_MOCK_SESSION_INCLUDED
26#define MYSQLD_MOCK_X_MOCK_SESSION_INCLUDED
46 std::vector<uint8_t> &payload);
52 std::unique_ptr<xcl::XProtocol::Message>>,
60 void encode_ok(
const uint64_t affected_rows = 0,
61 const uint64_t last_insert_id = 0,
62 const uint16_t server_status = 0,
63 const uint16_t warning_count = 0)
override;
68 void encode_message(
const xcl::XProtocol::Server_message_type_id msg_id,
91 std::unique_ptr<StatementReaderBase> statement_processor,
Definition: x_mock_session.h:85
clock_type::time_point start_time_
Definition: x_mock_session.h:134
MySQLServerMockSessionX(MySQLXProtocol protocol, std::unique_ptr< StatementReaderBase > statement_processor, const bool debug_mode, bool with_tls)
Definition: x_mock_session.cc:260
MySQLXProtocol protocol_
Definition: x_mock_session.h:130
std::vector< AsyncNotice > async_notices_
Definition: x_mock_session.h:129
clock_type::time_point notice_expiry() const
expiry of the notice.
Definition: x_mock_session.cc:147
net::steady_timer notice_timer_
Definition: x_mock_session.h:136
void greeting()
Definition: x_mock_session.cc:285
std::chrono::steady_clock clock_type
Definition: x_mock_session.h:87
void handshake()
Definition: x_mock_session.cc:295
void send_notice_then_notices()
Definition: x_mock_session.cc:554
void idle()
Definition: x_mock_session.cc:599
void send_response_then_handshake()
Definition: x_mock_session.cc:269
void notices()
Definition: x_mock_session.cc:575
void send_response_then_first_idle()
Definition: x_mock_session.cc:505
void cancel() override
Definition: x_mock_session.h:96
bool with_tls_
Definition: x_mock_session.h:132
bool encode_due_async_notices(const clock_type::time_point &start_time)
encode all async notices.
Definition: x_mock_session.cc:161
void send_response_then_disconnect()
Definition: x_mock_session.cc:484
void run() override
Definition: x_mock_session.cc:711
void send_response_then_idle()
Definition: x_mock_session.cc:531
Definition: mock_session.h:34
bool debug_mode() const
Definition: mock_session.h:47
Definition: x_mock_session.h:41
stdx::expected< std::unique_ptr< xcl::XProtocol::Message >, std::string > gr_state_changed_from_json(const std::string &json_string)
Definition: x_mock_session.cc:185
void encode_resultset(const ResultsetResponse &response) override
Definition: x_mock_session.cc:729
void encode_message(const xcl::XProtocol::Server_message_type_id msg_id, const xcl::XProtocol::Message &msg)
Definition: x_mock_session.cc:117
XProtocolEncoder protocol_encoder_
Definition: x_mock_session.h:81
Mysqlx::Notice::Frame notice_frame
Definition: x_mock_session.h:73
XProtocolDecoder protocol_decoder_
Definition: x_mock_session.h:82
stdx::expected< size_t, std::error_code > decode_frame(std::vector< uint8_t > &payload)
Definition: x_mock_session.cc:65
void encode_async_notice(const AsyncNotice &async_notice)
Definition: x_mock_session.cc:240
stdx::expected< std::unique_ptr< xcl::XProtocol::Message >, std::string > get_notice_message(const unsigned id, const std::string &payload)
Definition: x_mock_session.cc:220
stdx::expected< std::tuple< uint8_t, size_t >, std::error_code > recv_header(const net::const_buffer &buf)
stdx::expected< std::pair< xcl::XProtocol::Client_message_type_id, std::unique_ptr< xcl::XProtocol::Message > >, std::error_code > decode_single_message(const std::vector< uint8_t > &payload)
Definition: x_mock_session.cc:96
void encode_ok(const uint64_t affected_rows=0, const uint64_t last_insert_id=0, const uint16_t server_status=0, const uint16_t warning_count=0) override
Definition: x_mock_session.cc:721
void encode_error(const ErrorResponse &msg) override
Definition: x_mock_session.cc:713
Definition: statement_reader.h:79
ProtocolBase(socket_type client_sock, endpoint_type client_ep, TlsServerContext &tls_ctx)
Definition: protocol_base.cc:35
void cancel()
Definition: protocol_base.cc:132
net::io_context & io_context()
Definition: statement_reader.h:321
Definition: x_protocol_decoder.h:36
Definition: x_protocol_encoder.h:37
Definition: buf0block_hint.cc:29
Message
Definition: histogram.h:82
Definition: mock_server_component.h:35
classic_protocol::message::server::Error ErrorResponse
Definition: statement_reader.h:68
Common frame for all notices.
Definition: mysqlx_notice.proto:70
Definition: statement_reader.h:70
Keeps result data for single SQL statement that returns resultset.
Definition: statement_reader.h:62