39 {
"boot-update", Element::boolean,
"true" },
40 {
"subscribe-changes", Element::boolean,
"true" },
41 {
"validate-changes", Element::boolean,
"true" }
46 {
"socket-type", Element::string,
"stdout" },
47 {
"socket-name", Element::string,
"" },
48 {
"socket-url" , Element::string,
"http://127.0.0.1:8000/" }
53 {
"model", Element::string,
"kea-dhcp4-server" }
58 {
"model", Element::string,
"kea-dhcp6-server" }
63 {
"model", Element::string,
"kea-dhcp-ddns" }
68 {
"model", Element::string,
"kea-ctrl-agent" }
98 for (
auto it : mutable_servers->mapValue()) {
101 mutable_servers->set(it.first, server);
103 global->set(
"managed-servers", mutable_servers);
116 for (
auto it : mutable_servers->mapValue()) {
118 cnt += SimpleParser::deriveParams(global,
121 mutable_servers->set(it.first, mutable_server);
123 global->set(
"managed-servers", mutable_servers);
134 if (name ==
"dhcp4") {
136 }
else if (name ==
"dhcp6") {
138 }
else if (name ==
"d2") {
140 }
else if (name ==
"ca") {
150 server->set(
"control-socket", mutable_ctrl_sock);
163 ctx->setContext(user_context);
169 for (
auto it : servers->mapValue()) {
172 ctx->getCfgServersMap()->insert(make_pair(it.first, server));
182 hooks_parser.
parse(libraries, hooks);
190 HooksManager::prepareUnloadLibraries();
191 static_cast<void>(HooksManager::unloadLibraries());
static size_t setDefaults(isc::data::ElementPtr scope, const SimpleDefaults &default_values)
Sets the default values.
Wrapper class that holds hooks libraries configuration.
const isc::hooks::HookLibsCollection & get() const
Provides access to the configured hooks libraries.
void verifyLibraries(const isc::data::Element::Position &position, bool multi_threading_enabled) const
Verifies that libraries stored in libraries_ are valid.
void loadLibraries(bool multi_threading_enabled) const
Commits hooks libraries configuration.
Parser for hooks library list.
void parse(HooksConfig &libraries, isc::data::ConstElementPtr value)
Parses parameters value.
static const isc::data::SimpleDefaults NETCONF_DEFAULTS
This table defines default values for global options.
static const isc::data::SimpleDefaults DHCP6_DEFAULTS
Supplies defaults for dhcp6 managed server.
static const isc::data::SimpleDefaults DHCP4_DEFAULTS
Supplies defaults for dhcp4 managed server.
static size_t setAllDefaults(const isc::data::ElementPtr &global)
Sets all defaults for Netconf configuration.
static size_t deriveParameters(isc::data::ElementPtr global)
Derives (inherits) all parameters from global to more specific scopes.
static const isc::data::SimpleDefaults CA_DEFAULTS
Supplies defaults for ca managed server.
static const isc::data::ParamsList INHERIT_TO_SERVERS
List of parameters that can be inherited to managed-servers scope.
void parse(const NetconfConfigPtr &ctx, const isc::data::ElementPtr &config, bool check_only)
Parses the netconf configuration.
static const isc::data::SimpleDefaults CTRL_SOCK_DEFAULTS
Supplies defaults for control-socket elements.
static const isc::data::SimpleDefaults D2_DEFAULTS
Supplies defaults for d2 managed server.
static size_t setServerDefaults(const std::string name, isc::data::ElementPtr server)
Adds default values to a Managed server entry.
CfgServerPtr parse(data::ConstElementPtr server_config)
Performs the actual parsing of the given value from the "managed-servers" map.
ElementPtr copy(ConstElementPtr from, int level)
Copy the data up to a nesting level.
std::vector< std::string > ParamsList
This defines a list of all parameters that are derived (or inherited) between contexts.
boost::shared_ptr< const Element > ConstElementPtr
std::vector< SimpleDefault > SimpleDefaults
This specifies all default values in a given scope (e.g. a subnet).
boost::shared_ptr< Element > ElementPtr
boost::shared_ptr< NetconfConfig > NetconfConfigPtr
Pointer to a configuration context.
std::shared_ptr< CfgServer > CfgServerPtr
Defines a pointer for CfgServer instances.
Defines the logger used by the top-level component of kea-lfc.
A collection of classes for housing and parsing the application configuration necessary for the Netco...