MySQL 8.3.0
Source Code Documentation
Acceptor< Protocol > Class Template Reference

Public Types

using client_protocol_type = Protocol
 
using socket_type = typename client_protocol_type::socket
 
using acceptor_socket_type = typename client_protocol_type::acceptor
 
using acceptor_endpoint_type = typename client_protocol_type::endpoint
 
using server_protocol_type = net::ip::tcp
 

Public Member Functions

 Acceptor (MySQLRouting *r, std::list< IoThread > &io_threads, acceptor_socket_type &acceptor_socket, const acceptor_endpoint_type &acceptor_endpoint, WaitableMonitor< Nothing > &waitable)
 
 Acceptor (const Acceptor &)=delete
 
 Acceptor (Acceptor &&)=default
 
Acceptoroperator= (const Acceptor &)=delete
 
Acceptoroperator= (Acceptor &&)=default
 
 ~Acceptor ()
 
template<typename S >
void graceful_shutdown (S &sock)
 
void operator() (std::error_code ec)
 

Private Attributes

MySQLRoutingr_
 
std::list< IoThread > & io_threads_
 
acceptor_socket_typeacceptor_socket_
 
const acceptor_endpoint_typeacceptor_endpoint_
 
std::list< IoThread >::iterator cur_io_thread_
 
WaitableMonitor< Nothing > & waitable_
 
bool debug_is_logged_ {}
 
Owner last_one_
 

Member Typedef Documentation

◆ acceptor_endpoint_type

template<class Protocol >
using Acceptor< Protocol >::acceptor_endpoint_type = typename client_protocol_type::endpoint

◆ acceptor_socket_type

template<class Protocol >
using Acceptor< Protocol >::acceptor_socket_type = typename client_protocol_type::acceptor

◆ client_protocol_type

template<class Protocol >
using Acceptor< Protocol >::client_protocol_type = Protocol

◆ server_protocol_type

◆ socket_type

template<class Protocol >
using Acceptor< Protocol >::socket_type = typename client_protocol_type::socket

Constructor & Destructor Documentation

◆ Acceptor() [1/3]

template<class Protocol >
Acceptor< Protocol >::Acceptor ( MySQLRouting r,
std::list< IoThread > &  io_threads,
acceptor_socket_type acceptor_socket,
const acceptor_endpoint_type acceptor_endpoint,
WaitableMonitor< Nothing > &  waitable 
)
inline

◆ Acceptor() [2/3]

template<class Protocol >
Acceptor< Protocol >::Acceptor ( const Acceptor< Protocol > &  )
delete

◆ Acceptor() [3/3]

template<class Protocol >
Acceptor< Protocol >::Acceptor ( Acceptor< Protocol > &&  )
default

◆ ~Acceptor()

template<class Protocol >
Acceptor< Protocol >::~Acceptor ( )
inline

Member Function Documentation

◆ graceful_shutdown()

template<class Protocol >
template<typename S >
void Acceptor< Protocol >::graceful_shutdown ( S &  sock)
inline

◆ operator()()

template<class Protocol >
void Acceptor< Protocol >::operator() ( std::error_code  ec)
inline

◆ operator=() [1/2]

template<class Protocol >
Acceptor & Acceptor< Protocol >::operator= ( Acceptor< Protocol > &&  )
default

◆ operator=() [2/2]

template<class Protocol >
Acceptor & Acceptor< Protocol >::operator= ( const Acceptor< Protocol > &  )
delete

Member Data Documentation

◆ acceptor_endpoint_

template<class Protocol >
const acceptor_endpoint_type& Acceptor< Protocol >::acceptor_endpoint_
private

◆ acceptor_socket_

template<class Protocol >
acceptor_socket_type& Acceptor< Protocol >::acceptor_socket_
private

◆ cur_io_thread_

template<class Protocol >
std::list<IoThread>::iterator Acceptor< Protocol >::cur_io_thread_
private

◆ debug_is_logged_

template<class Protocol >
bool Acceptor< Protocol >::debug_is_logged_ {}
private

◆ io_threads_

template<class Protocol >
std::list<IoThread>& Acceptor< Protocol >::io_threads_
private

◆ last_one_

template<class Protocol >
Owner Acceptor< Protocol >::last_one_
private

◆ r_

template<class Protocol >
MySQLRouting* Acceptor< Protocol >::r_
private

◆ waitable_

template<class Protocol >
WaitableMonitor<Nothing>& Acceptor< Protocol >::waitable_
private

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