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_
30#include <shared_mutex>
32#include <unordered_map>
34#ifdef HAVE_JIT_EXECUTOR_PLUGIN
42#ifdef HAVE_JIT_EXECUTOR_PLUGIN
49namespace file_system {
74 std::optional<std::string>
get_options()
const override;
83#ifdef HAVE_JIT_EXECUTOR_PLUGIN
84 std::shared_ptr<jit_executor::IContextHandle> get_scripting_context();
85 std::string get_content_set_path(
const std::string &module_class_name);
98#ifdef HAVE_JIT_EXECUTOR_PLUGIN
99 void update_content_set_data();
106#ifdef HAVE_JIT_EXECUTOR_PLUGIN
108 bool updated_jit_executor_config_ =
false;
109 std::unordered_map<std::string, std::string> content_set_paths_;
110 std::shared_mutex content_set_path_mutex_;
111 std::mutex m_scripting_context_mutex;
Definition: db_service_endpoint.h:56
DbServiceEndpoint(const DbService &entry, EndpointConfigurationPtr configuration, HandlerFactoryPtr factory)
Definition: db_service_endpoint.cc:52
bool debug_enabled_
Definition: db_service_endpoint.h:104
bool is_debug_enabled() const
Definition: db_service_endpoint.cc:91
UniversalId get_parent_id() const override
Definition: db_service_endpoint.cc:72
std::shared_ptr< DbService > DbServicePtr
Definition: db_service_endpoint.h:60
Uri get_url() const override
Definition: db_service_endpoint.cc:226
void update() override
Definition: db_service_endpoint.cc:185
UniversalId get_id() const override
Definition: db_service_endpoint.cc:70
std::string get_extra_update_data() override
Definition: db_service_endpoint.cc:254
void set(const DbService &entry, EndpointBasePtr parent)
Definition: db_service_endpoint.cc:93
~DbServiceEndpoint() override
Definition: db_service_endpoint.cc:63
mrs::database::entry::DbService DbService
Definition: db_service_endpoint.h:59
EnabledType get_this_node_enabled_level() const override
Definition: db_service_endpoint.cc:214
const DbServicePtr get() const
Definition: db_service_endpoint.cc:76
void set_debug_enabled(bool value)
Definition: db_service_endpoint.cc:78
void deactivate() override
Definition: db_service_endpoint.cc:212
bool does_this_node_require_authentication() const override
Definition: db_service_endpoint.cc:246
std::string get_my_url_part() const override
Definition: db_service_endpoint.cc:222
std::optional< std::string > get_options() const override
Definition: db_service_endpoint.cc:250
DbService DataType
Definition: db_service_endpoint.h:62
void on_updated_content_set()
Definition: db_service_endpoint.cc:100
std::vector< HandlerPtr > url_handlers_
Definition: db_service_endpoint.h:103
DbServicePtr entry_
Definition: db_service_endpoint.h:102
std::shared_ptr< mrs::interface::HandlerFactory > HandlerFactoryPtr
Definition: db_service_endpoint.h:61
std::string get_my_url_path_part() const override
Definition: db_service_endpoint.cc:218
void activate_public() override
Definition: db_service_endpoint.cc:194
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:46
Definition: authorize_manager.h:48
required string configuration
Definition: replication_asynchronous_connection_failover.proto:49
Definition: completion_hash.h:35
Definition: jit_executor_component.h:59