Kea 2.7.5
|
#include <simple_parser.h>
Public Member Functions | |
void | parse (const NetconfConfigPtr &ctx, const isc::data::ElementPtr &config, bool check_only) |
Parses the netconf configuration. | |
Public Member Functions inherited from isc::data::SimpleParser | |
uint16_t | getUint16 (isc::data::ConstElementPtr scope, const std::string &name) |
Returns a value converted to uint16_t. | |
uint32_t | getUint32 (isc::data::ConstElementPtr scope, const std::string &name) |
Returns a value converted to uint32_t. | |
uint8_t | getUint8 (ConstElementPtr scope, const std::string &name) |
Get an uint8_t value. | |
const isc::util::Triplet< uint32_t > | parseIntTriplet (const data::ConstElementPtr &scope, const std::string &name) |
Parses an integer triplet. | |
Static Public Member Functions | |
static size_t | deriveParameters (isc::data::ElementPtr global) |
Derives (inherits) all parameters from global to more specific scopes. | |
static size_t | setAllDefaults (const isc::data::ElementPtr &global) |
Sets all defaults for Netconf configuration. | |
static size_t | setServerDefaults (const std::string name, isc::data::ElementPtr server) |
Adds default values to a Managed server entry. | |
Static Public Member Functions inherited from isc::data::SimpleParser | |
static void | checkKeywords (const SimpleKeywords &keywords, isc::data::ConstElementPtr scope) |
Checks acceptable keywords with their expected type. | |
static void | checkRequired (const SimpleRequiredKeywords &required, isc::data::ConstElementPtr scope) |
Checks that all required keywords are present. | |
static size_t | deriveParams (isc::data::ConstElementPtr parent, isc::data::ElementPtr child, const ParamsList ¶ms) |
Derives (inherits) parameters from parent scope to a child. | |
static isc::asiolink::IOAddress | getAddress (const ConstElementPtr &scope, const std::string &name) |
Returns a IOAddress parameter from a scope. | |
static bool | getBoolean (isc::data::ConstElementPtr scope, const std::string &name) |
Returns a boolean parameter from a scope. | |
static double | getDouble (const ConstElementPtr &scope, const std::string &name) |
Returns a floating point parameter from a scope. | |
static int64_t | getInteger (isc::data::ConstElementPtr scope, const std::string &name) |
Returns an integer parameter from a scope. | |
static int64_t | getInteger (isc::data::ConstElementPtr scope, const std::string &name, int64_t min, int64_t max) |
Returns an integer parameter from a scope and checks its range. | |
static const data::Element::Position & | getPosition (const std::string &name, const data::ConstElementPtr parent) |
Utility method that returns position of an element. | |
static std::string | getString (isc::data::ConstElementPtr scope, const std::string &name) |
Returns a string parameter from a scope. | |
static size_t | setDefaults (isc::data::ElementPtr scope, const SimpleDefaults &default_values) |
Sets the default values. | |
static size_t | setListDefaults (isc::data::ConstElementPtr list, const SimpleDefaults &default_values) |
Sets the default values for all entries in a list. | |
Static Public Attributes | |
static const isc::data::SimpleDefaults | NETCONF_DEFAULTS |
This table defines default values for global options. | |
static const isc::data::SimpleDefaults | CTRL_SOCK_DEFAULTS |
Supplies defaults for control-socket elements. | |
static const isc::data::SimpleDefaults | DHCP4_DEFAULTS |
Supplies defaults for dhcp4 managed server. | |
static const isc::data::SimpleDefaults | DHCP6_DEFAULTS |
Supplies defaults for dhcp6 managed server. | |
static const isc::data::SimpleDefaults | D2_DEFAULTS |
Supplies defaults for d2 managed server. | |
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. | |
Additional Inherited Members | |
Protected Member Functions inherited from isc::data::SimpleParser | |
template<typename target_type , target_type convert> | |
target_type | getAndConvert (isc::data::ConstElementPtr scope, const std::string &name, const std::string &type_name) |
Returns a converted value from a scope. | |
template<typename int_type > | |
int_type | getIntType (isc::data::ConstElementPtr scope, const std::string &name) |
Returns an integer value with range checking from a scope. | |
Definition at line 23 of file bin/netconf/simple_parser.h.
|
static |
Derives (inherits) all parameters from global to more specific scopes.
This method currently does the following:
global | scope to be modified if needed |
Definition at line 111 of file bin/netconf/simple_parser.cc.
References isc::data::copy(), isc::data::SimpleParser::deriveParams(), and INHERIT_TO_SERVERS.
Referenced by isc::netconf::NetconfCfgMgr::parse().
void isc::netconf::NetconfSimpleParser::parse | ( | const NetconfConfigPtr & | ctx, |
const isc::data::ElementPtr & | config, | ||
bool | check_only ) |
Parses the netconf configuration.
ctx | - parsed information will be stored here |
config | - Element tree structure that holds configuration |
check_only | - if true the configuration is verified only, not applied |
ConfigError | if any issues are encountered. |
Definition at line 158 of file bin/netconf/simple_parser.cc.
References isc::hooks::HooksConfig::get(), isc::asiolink::IOServiceMgr::instance(), isc::netconf::ServerConfigParser::parse(), and isc::hooks::HooksLibrariesParser::parse().
Referenced by isc::netconf::NetconfCfgMgr::parse().
|
static |
Sets all defaults for Netconf configuration.
This method sets global, option data and option definitions defaults.
global | scope to be filled in with defaults. |
Definition at line 91 of file bin/netconf/simple_parser.cc.
References isc::data::copy(), NETCONF_DEFAULTS, isc::data::SimpleParser::setDefaults(), and setServerDefaults().
Referenced by isc::netconf::NetconfCfgMgr::parse().
|
static |
Adds default values to a Managed server entry.
Adds server specific defaults, e.g. the default model.
name | server name / entry key |
server | server element / entry value |
Definition at line 132 of file bin/netconf/simple_parser.cc.
References CA_DEFAULTS, isc::data::copy(), CTRL_SOCK_DEFAULTS, D2_DEFAULTS, DHCP4_DEFAULTS, DHCP6_DEFAULTS, and isc::data::SimpleParser::setDefaults().
Referenced by setAllDefaults().
|
static |
Supplies defaults for ca managed server.
Definition at line 68 of file bin/netconf/simple_parser.h.
Referenced by setServerDefaults().
|
static |
Supplies defaults for control-socket elements.
Definition at line 64 of file bin/netconf/simple_parser.h.
Referenced by setServerDefaults().
|
static |
Supplies defaults for d2 managed server.
Definition at line 67 of file bin/netconf/simple_parser.h.
Referenced by setServerDefaults().
|
static |
Supplies defaults for dhcp4 managed server.
Definition at line 65 of file bin/netconf/simple_parser.h.
Referenced by setServerDefaults().
|
static |
Supplies defaults for dhcp6 managed server.
Definition at line 66 of file bin/netconf/simple_parser.h.
Referenced by setServerDefaults().
|
static |
List of parameters that can be inherited to managed-servers scope.
Some parameters may be defined on both global (directly in Netconf) and servers (Netconf/managed-servers/...) scope. If not defined in the managed-servers scope, the value is being inherited (derived) from the global scope. This array lists all of such parameters.
Definition at line 69 of file bin/netconf/simple_parser.h.
Referenced by deriveParameters().
|
static |
This table defines default values for global options.
These are global Netconf parameters.
Definition at line 63 of file bin/netconf/simple_parser.h.
Referenced by setAllDefaults().