26#ifndef MYSQLROUTER_DESTINATION_INCLUDED
27#define MYSQLROUTER_DESTINATION_INCLUDED
32#include <system_error>
48 std::string routing_guidelines_route_name,
49 const std::optional<bool> connection_sharing_allowed = std::nullopt)
52 std::move(routing_guidelines_route_name);
54 connection_sharing_allowed;
122 std::optional<mysql_harness::Destination>
dest_;
Destination to forward client connections to.
Definition: destination.h:43
Destination(const Destination &)=default
const std::string & route_name() const
Get name of the route that was used to reach this destination.
Definition: destination.h:90
std::optional< mysql_harness::Destination > dest_
Definition: destination.h:122
Destination(Destination &&)=default
virtual ~Destination()=default
virtual mysqlrouter::ServerMode server_mode() const
server-mode of the destination.
Definition: destination.cc:81
void disable_connection_sharing()
Disable connection sharing if sharing prerequisites cannot be met.
Definition: destination.h:117
Destination(mysql_harness::Destination dest, routing_guidelines::Server_info server_info, std::string routing_guidelines_route_name, const std::optional< bool > connection_sharing_allowed=std::nullopt)
Definition: destination.h:45
routing_guidelines::Server_info server_info_
Definition: destination.h:123
Guidelines_route_info guidelines_route_info_
Definition: destination.h:124
const Guidelines_route_info & guidelines_route_info() const
Definition: destination.h:110
const mysql_harness::Destination & destination() const
Definition: destination.h:69
Destination & operator=(Destination &&)=default
Destination & operator=(const Destination &)=default
const std::string & server_uuid() const
Get server UUID.
Definition: destination.h:76
const routing_guidelines::Server_info & get_server_info() const
Get server information.
Definition: destination.h:81
void set_route_name(std::string name)
Set name of the route that was used to reach this destination.
Definition: destination.h:99
Definition: destination.h:95
ServerMode
Definition: datatypes.h:50
Definition: gcs_xcom_synode.h:64
case opt name
Definition: sslopt-case.h:29
Definition: destination.h:64
std::string route_name
Definition: destination.h:66
std::optional< bool > connection_sharing_allowed
Definition: destination.h:65
Information about one server destination.
Definition: routing_guidelines.h:78
std::string uuid
@server_uuid of the server
Definition: routing_guidelines.h:83