MySQL 8.3.0
Source Code Documentation
MySQLRoutingBase Class Referenceabstract

Facade to avoid a tight coupling between Routing component and actual routing endpoint implementation. More...

#include <mysql_routing_base.h>

Inheritance diagram for MySQLRoutingBase:
[legend]

Public Member Functions

 MySQLRoutingBase ()=default
 
 MySQLRoutingBase (const MySQLRoutingBase &)=default
 
 MySQLRoutingBase (MySQLRoutingBase &&)=default
 
MySQLRoutingBaseoperator= (const MySQLRoutingBase &)=default
 
MySQLRoutingBaseoperator= (MySQLRoutingBase &&)=default
 
virtual ~MySQLRoutingBase ()=default
 
virtual MySQLRoutingContextget_context ()=0
 
virtual int get_max_connections () const noexcept=0
 
virtual std::vector< mysql_harness::TCPAddressget_destinations () const =0
 
virtual std::vector< MySQLRoutingAPI::ConnDataget_connections ()=0
 
virtual MySQLRoutingConnectionBaseget_connection (const std::string &)=0
 
virtual bool is_accepting_connections () const =0
 
virtual routing::RoutingStrategy get_routing_strategy () const =0
 
virtual routing::Mode get_mode () const =0
 
virtual stdx::expected< void, std::string > restart_accepting_connections ()=0
 
virtual stdx::expected< void, std::string > start_accepting_connections ()=0
 
virtual void stop_socket_acceptors ()=0
 
virtual bool is_running () const =0
 

Detailed Description

Facade to avoid a tight coupling between Routing component and actual routing endpoint implementation.

Allows replacing the routing endpoint with an alternative implementation.

Constructor & Destructor Documentation

◆ MySQLRoutingBase() [1/3]

MySQLRoutingBase::MySQLRoutingBase ( )
default

◆ MySQLRoutingBase() [2/3]

MySQLRoutingBase::MySQLRoutingBase ( const MySQLRoutingBase )
default

◆ MySQLRoutingBase() [3/3]

MySQLRoutingBase::MySQLRoutingBase ( MySQLRoutingBase &&  )
default

◆ ~MySQLRoutingBase()

virtual MySQLRoutingBase::~MySQLRoutingBase ( )
virtualdefault

Member Function Documentation

◆ get_connection()

virtual MySQLRoutingConnectionBase * MySQLRoutingBase::get_connection ( const std::string &  )
pure virtual

Implemented in MySQLRouting.

◆ get_connections()

virtual std::vector< MySQLRoutingAPI::ConnData > MySQLRoutingBase::get_connections ( )
pure virtual

Implemented in MySQLRouting.

◆ get_context()

virtual MySQLRoutingContext & MySQLRoutingBase::get_context ( )
pure virtual

Implemented in MySQLRouting.

◆ get_destinations()

virtual std::vector< mysql_harness::TCPAddress > MySQLRoutingBase::get_destinations ( ) const
pure virtual

Implemented in MySQLRouting.

◆ get_max_connections()

virtual int MySQLRoutingBase::get_max_connections ( ) const
pure virtualnoexcept

Implemented in MySQLRouting.

◆ get_mode()

virtual routing::Mode MySQLRoutingBase::get_mode ( ) const
pure virtual

Implemented in MySQLRouting.

◆ get_routing_strategy()

virtual routing::RoutingStrategy MySQLRoutingBase::get_routing_strategy ( ) const
pure virtual

Implemented in MySQLRouting.

◆ is_accepting_connections()

virtual bool MySQLRoutingBase::is_accepting_connections ( ) const
pure virtual

Implemented in MySQLRouting.

◆ is_running()

virtual bool MySQLRoutingBase::is_running ( ) const
pure virtual

Implemented in MySQLRouting.

◆ operator=() [1/2]

MySQLRoutingBase & MySQLRoutingBase::operator= ( const MySQLRoutingBase )
default

◆ operator=() [2/2]

MySQLRoutingBase & MySQLRoutingBase::operator= ( MySQLRoutingBase &&  )
default

◆ restart_accepting_connections()

virtual stdx::expected< void, std::string > MySQLRoutingBase::restart_accepting_connections ( )
pure virtual

Implemented in MySQLRouting.

◆ start_accepting_connections()

virtual stdx::expected< void, std::string > MySQLRoutingBase::start_accepting_connections ( )
pure virtual

Implemented in MySQLRouting.

◆ stop_socket_acceptors()

virtual void MySQLRoutingBase::stop_socket_acceptors ( )
pure virtual

Implemented in MySQLRouting.


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