Kea 3.3.4
isc::cb::GlobalParameterParser Class Reference

Implements a parser for global parameters. More...

#include <cb_parsers.h>

Inheritance diagram for isc::cb::GlobalParameterParser:

Public Member Functions

 GlobalParameterParser (const data::SimpleKeywords &keywords, const data::SimpleKeywords &list_keywords)
 Constructor.
data::StampedValueCollection parse (const data::ConstElementPtr &global_parameter_data)
 Parses global parameters information.
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.

Additional Inherited Members

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 &params)
 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.
template<typename T>
static void rangeCheckedInteger (isc::data::ConstElementPtr scope, const std::string &name, T &output_value)
 Fetches a range-checked integer 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.
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.

Detailed Description

Implements a parser for global parameters.

Definition at line 60 of file cb_parsers.h.

Constructor & Destructor Documentation

◆ GlobalParameterParser()

isc::cb::GlobalParameterParser::GlobalParameterParser ( const data::SimpleKeywords & keywords,
const data::SimpleKeywords & list_keywords )
inline

Constructor.

Parameters
keywordsGlobal parameter names and types.
list_keywordsGlobal list parameter names and subtypes.

Definition at line 66 of file cb_parsers.h.

Member Function Documentation

◆ parse()

StampedValueCollection isc::cb::GlobalParameterParser::parse ( const data::ConstElementPtr & global_parameter_data)

Parses global parameters information.

Parsed data must include a map of parameter name/value pairs. The values can be of a string, integer, boolean or real type.

Parameters
global_parameter_dataMap element holding global parameters and their values.
Returns
Collection of stamped values holding parsed data.
Exceptions
BadValueif the parsed element is malformed.

Definition at line 57 of file cb_parsers.cc.

References isc::data::copy(), isc_throw, Element::list, Element::map, and Element::typeToName().

Here is the call graph for this function:

The documentation for this class was generated from the following files: