Kea 2.7.6
|
Parser for D2ClientConfig. More...
#include <dhcp_parsers.h>
Public Member Functions | |
D2ClientConfigPtr | parse (isc::data::ConstElementPtr d2_client_cfg) |
Parses a given dhcp-ddns element into D2ClientConfig. | |
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 | setAllDefaults (isc::data::ConstElementPtr d2_config) |
Sets all defaults for D2 client configuration. | |
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 | D2_CLIENT_CONFIG_DEFAULTS |
Defaults for the D2 client configuration. | |
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. | |
Parser for D2ClientConfig.
This class parses the configuration element "dhcp-ddns" common to the config files for both dhcp4 and dhcp6. It creates an instance of a D2ClientConfig.
Definition at line 1013 of file dhcp_parsers.h.
D2ClientConfigPtr isc::dhcp::D2ClientConfigParser::parse | ( | isc::data::ConstElementPtr | d2_client_cfg | ) |
Parses a given dhcp-ddns element into D2ClientConfig.
d2_client_cfg | is the "dhcp-ddns" configuration to parse |
The elements currently supported are (see isc::dhcp::D2ClientConfig for details on each):
Definition at line 1548 of file dhcp_parsers.cc.
References isc::dhcp_ddns::FMT_JSON, isc::data::SimpleParser::getAddress(), isc::data::SimpleParser::getBoolean(), isc::asiolink::IOAddress::getFamily(), isc::data::SimpleParser::getPosition(), isc::data::SimpleParser::getString(), isc::data::SimpleParser::getUint32(), isc::asiolink::IOAddress::IPV4_ZERO_ADDRESS(), isc::asiolink::IOAddress::IPV6_ZERO_ADDRESS(), isc_throw, isc::asiolink::IOAddress::isV4(), isc::dhcp_ddns::NCR_UDP, isc::dhcp_ddns::ncrFormatToString(), isc::dhcp_ddns::ncrProtocolToString(), and isc::asiolink::IOAddress::toText().
Referenced by isc::dhcp::processDhcp4Config(), and isc::dhcp::processDhcp6Config().
|
static |
Sets all defaults for D2 client configuration.
This method sets defaults value. It must not be called before the short cut disabled updates condition was checked.
d2_config | d2 client configuration (will be const cast |
Definition at line 1659 of file dhcp_parsers.cc.
References D2_CLIENT_CONFIG_DEFAULTS, and isc::data::SimpleParser::setDefaults().
Referenced by isc::dhcp::processDhcp4Config(), and isc::dhcp::processDhcp6Config().
|
static |
Defaults for the D2 client configuration.
This table defines default values for D2 client configuration.
Definition at line 1035 of file dhcp_parsers.h.
Referenced by setAllDefaults().