Implementation of a.
More...
#include <gcs_mysql_network_provider.h>
Implementation of a.
- See also
- Network_provider that will manage MySQL protocol connection for GCS/XCOM.
◆ Gcs_mysql_network_provider()
Construct a new Gcs_mysql_network_provider.
- Parameters
-
auth_provider | A provider interface implementation for authentication parameters. |
native_interface | A provider interface for all mysql native methods. |
◆ ~Gcs_mysql_network_provider()
virtual Gcs_mysql_network_provider::~Gcs_mysql_network_provider |
( |
| ) |
|
|
inlineoverridevirtual |
◆ cleanup_secure_connections_context()
void Gcs_mysql_network_provider::cleanup_secure_connections_context |
( |
| ) |
|
|
overridevirtual |
◆ close_connection()
Closes an open connection to another XCom endpoint served by the same Network provider.
- Parameters
-
connection | an open and valid connection |
- Returns
- int an error code in case of error. 0, otherwise.
Implements Network_provider.
◆ configure()
◆ configure_secure_connections()
See.
- See also
- Network_provider::configure_secure_connections
Implements Network_provider.
◆ finalize_secure_connections_context()
bool Gcs_mysql_network_provider::finalize_secure_connections_context |
( |
| ) |
|
|
overridevirtual |
◆ get_communication_stack()
Get the communication stack implemented by this class.
- Returns
- a CommunicationStack enum value. In this case -> MYSQL_PROTOCOL
Implements Network_provider.
◆ open_connection()
◆ set_new_connection()
Set the new connection coming form MySQL server.
- Parameters
-
thd | the THD to which the connection belongs to. |
connection | the connection data itself. |
◆ start()
std::pair< bool, int > Gcs_mysql_network_provider::start |
( |
| ) |
|
|
overridevirtual |
◆ stop()
std::pair< bool, int > Gcs_mysql_network_provider::stop |
( |
| ) |
|
|
overridevirtual |
◆ m_auth_provider
External IoC dependencies.
- A provider for authentication parameters
- A provider for all mysql native methods
◆ m_config_parameters
◆ m_connection_map
std::map<int, MYSQL *> Gcs_mysql_network_provider::m_connection_map |
|
private |
A map that holds all open MySQL client connections.
Since the public interface of Network Managers only knows about File Descriptors, this is the repository for all MySQL client connections. This object is required when using mysql_close.
The map's index is the open connection's file descriptor.
◆ m_GR_LOCK_connection_map_mutex
mysql_mutex_t Gcs_mysql_network_provider::m_GR_LOCK_connection_map_mutex |
|
private |
◆ m_incoming_connection_map
std::map<int, THD *> Gcs_mysql_network_provider::m_incoming_connection_map |
|
private |
A map that holds THD's for all open MySQL Server connections.
We need to maintain this reference in order to call the appropriate closing mechanisms when destroying an incoming connection.
The map's index is the open connection's file descriptor.
◆ m_native_interface
The documentation for this class was generated from the following files: