26#ifndef ROUTER_SRC_REST_MRS_SRC_REST_MRS_CONFIG_H_ 
   27#define ROUTER_SRC_REST_MRS_SRC_REST_MRS_CONFIG_H_ 
   62                        const std::vector<std::string> &routing_sections,
 
   63                        const std::optional<std::string> &router_name,
 
   64                        const uint32_t http_port);
 
   69  bool is_required(std::string_view option) 
const override;
 
   70  std::string 
get_default(std::string_view option) 
const override;
 
   78  template <
typename ErrorReport = NoReporting>
 
   83        throw std::runtime_error(
"Keyring not running");
 
   86    } 
catch (
const std::exception &e) {
 
   87      ErrorReport()(
user.c_str());
 
   88      throw std::runtime_error(std::string(
"Could not fetch value for '") +
 
   89                               user + 
"' from the keyring: " + e.what());
 
Definition: mysql_rest_service_plugin_config.h:41
 
void operator()(const char *variable)
 
Definition: configuration.h:49
 
Definition: mysql_rest_service_plugin_config.h:73
 
void operator()(const char *)
Definition: mysql_rest_service_plugin_config.h:75
 
Definition: mysql_rest_service_plugin_config.h:49
 
PluginConfig(const ConfigSection *section, const std::vector< std::string > &routing_sections, const std::optional< std::string > &router_name, const uint32_t http_port)
Definition: mysql_rest_service_plugin_config.cc:280
 
std::set< std::string > get_waiting_for_routing_plugins()
Definition: mysql_rest_service_plugin_config.cc:330
 
static std::string get_keyring_value(const std::string &user, const char *attr)
Definition: mysql_rest_service_plugin_config.h:79
 
const std::string k_option_metadata_refresh
Definition: mysql_rest_service_plugin_config.h:58
 
bool is_required(std::string_view option) const override
Returns whether the given option is required.
Definition: mysql_rest_service_plugin_config.cc:367
 
std::string get_default(std::string_view option) const override
Gets the default for the given option.
Definition: mysql_rest_service_plugin_config.cc:375
 
bool init_runtime_configuration()
Definition: mysql_rest_service_plugin_config.cc:339
 
Retrieve and manage plugin configuration.
Definition: plugin_config.h:62
 
Configuration section.
Definition: config_parser.h:141
 
Definition: config_option.h:203
 
Definition: config_option.h:112
 
virtual std::string fetch(const std::string &uid, const std::string &attribute) const =0
Retrieves attribute value from an entry.
 
Definition: config_option.h:156
 
mysql_harness::StringOption StringOption
Definition: http_auth_backend_plugin.cc:65
 
char * user
Definition: mysqladmin.cc:67
 
Definition: authorize_manager.h:48
 
HARNESS_EXPORT Keyring * get_keyring() noexcept
Gets a previously initialized singleton instance of the keyring.
Definition: keyring_manager.cc:212
 
DurationOption< std::chrono::seconds > SecondsOption
Definition: config_option.h:227
 
DurationOption< std::chrono::milliseconds > MilliSecondsOption
a double option with milli-second precision.
Definition: config_option.h:226