26#ifndef ROUTER_SRC_MYSQL_REST_SERVICE_SRC_MRS_ENDPOINT_DB_SERVICE_ENDPOINT_H_
27#define ROUTER_SRC_MYSQL_REST_SERVICE_SRC_MRS_ENDPOINT_DB_SERVICE_ENDPOINT_H_
31#include <unordered_map>
33#ifdef HAVE_JIT_EXECUTOR_PLUGIN
41#ifdef HAVE_JIT_EXECUTOR_PLUGIN
47namespace file_system {
70 std::optional<std::string>
get_options()
const override;
79#ifdef HAVE_JIT_EXECUTOR_PLUGIN
80 std::shared_ptr<jit_executor::IContextHandle> get_scripting_context();
81 std::string get_content_set_path(
const std::string &module_class_name);
94#ifdef HAVE_JIT_EXECUTOR_PLUGIN
95 std::shared_ptr<file_system::DbServiceFileSystem> get_file_system();
96 bool get_content_set_data();
103#ifdef HAVE_JIT_EXECUTOR_PLUGIN
104 std::shared_ptr<file_system::DbServiceFileSystem> file_system_;
105 std::optional<std::vector<std::string>> content_set_scripts_;
106 std::unordered_map<std::string, std::string> content_set_paths_;
107 std::mutex m_scripting_context_mutex;
Definition: db_service_endpoint.h:54
DbServiceEndpoint(const DbService &entry, EndpointConfigurationPtr configuration, HandlerFactoryPtr factory)
Definition: db_service_endpoint.cc:51
bool debug_enabled_
Definition: db_service_endpoint.h:101
bool is_debug_enabled() const
Definition: db_service_endpoint.cc:78
UniversalId get_parent_id() const override
Definition: db_service_endpoint.cc:59
std::shared_ptr< DbService > DbServicePtr
Definition: db_service_endpoint.h:58
Uri get_url() const override
Definition: db_service_endpoint.cc:220
void update() override
Definition: db_service_endpoint.cc:183
UniversalId get_id() const override
Definition: db_service_endpoint.cc:57
std::string get_extra_update_data() override
Definition: db_service_endpoint.cc:248
void set(const DbService &entry, EndpointBasePtr parent)
Definition: db_service_endpoint.cc:80
mrs::database::entry::DbService DbService
Definition: db_service_endpoint.h:57
EnabledType get_this_node_enabled_level() const override
Definition: db_service_endpoint.cc:208
const DbServicePtr get() const
Definition: db_service_endpoint.cc:63
void set_debug_enabled(bool value)
Definition: db_service_endpoint.cc:65
void deactivate() override
Definition: db_service_endpoint.cc:206
bool does_this_node_require_authentication() const override
Definition: db_service_endpoint.cc:240
std::string get_my_url_part() const override
Definition: db_service_endpoint.cc:216
std::optional< std::string > get_options() const override
Definition: db_service_endpoint.cc:244
DbService DataType
Definition: db_service_endpoint.h:60
void on_updated_content_set()
Definition: db_service_endpoint.cc:87
std::vector< HandlerPtr > url_handlers_
Definition: db_service_endpoint.h:100
DbServicePtr entry_
Definition: db_service_endpoint.h:99
std::shared_ptr< mrs::interface::HandlerFactory > HandlerFactoryPtr
Definition: db_service_endpoint.h:59
std::string get_my_url_path_part() const override
Definition: db_service_endpoint.cc:212
void activate_public() override
Definition: db_service_endpoint.cc:188
Definition: option_endpoint.h:39
OptionEndpoint(UniversalId service_id, EndpointConfigurationPtr configuration, HandlerFactoryPtr factory)
Definition: option_endpoint.cc:37
Definition: db_service_file_system.h:49
mrs::database::entry::EnabledType EnabledType
Definition: endpoint_base.h:59
std::shared_ptr< EndpointBase > EndpointBasePtr
Definition: endpoint_base.h:60
mrs::database::entry::UniversalId UniversalId
Definition: endpoint_base.h:61
std::shared_ptr< EndpointConfiguration > EndpointConfigurationPtr
Definition: endpoint_base.h:64
ValueType value(const std::optional< ValueType > &v)
Definition: gtid.h:83
DbServiceEndpoint::DbService DbService
Definition: db_service_endpoint.cc:45
Definition: authorize_manager.h:48
required string configuration
Definition: replication_asynchronous_connection_failover.proto:49
Definition: completion_hash.h:35