Kea: isc::dhcp::Pools6ListParser Class Reference

| Kea 3.2.0-git

isc::dhcp::Pools6ListParser Class Reference

Specialization of the pool list parser for DHCPv6. More...

`#include <dhcp_parsers.h>`

Inheritance diagram for isc::dhcp::Pools6ListParser:
[legend]

## Public Member Functions
void | parse (PoolStoragePtr pools, data::ConstElementPtr pools_list, bool encapsulate_options=true)
| parses the actual structure
Public Member Functions inherited from isc::dhcp::PoolsListParser
virtual | ~PoolsListParser ()
| destructor.
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.

## Protected Member Functions
virtual boost::shared_ptr< PoolParser > | createPoolConfigParser () const
| Returns an instance of the `Pool6Parser` to be used in parsing the address pools.
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.

## 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.

## Detailed Description

Specialization of the pool list parser for DHCPv6.

Definition at line 739 of file dhcp_parsers.h.

## Member Function Documentation

## ◆ createPoolConfigParser()

boost::shared_ptr< PoolParser > isc::dhcp::Pools6ListParser::createPoolConfigParser | ( |  | ) | const
| protectedvirtual

Returns an instance of the `Pool6Parser` to be used in parsing the address pools.

This function can be overridden in the child classes to supply a custom parser for the pools.

Returns
  an instance of the `Pool6Parser`.

Implements isc::dhcp::PoolsListParser.

Definition at line 1097 of file dhcp_parsers.cc.

Referenced by parse().

## ◆ parse()

void isc::dhcp::Pools6ListParser::parse | ( | PoolStoragePtr | pools,
|  | data::ConstElementPtr | pools_list,
|  | bool | encapsulate_options = true )
| virtual

parses the actual structure

This method parses the actual list of pools.

Parameters

  pools | storage container in which to store the parsed pool.
  pools_list | a list of pool structures
  encapsulate_options | a boolean parameter indicating if the parsed options should be encapsulated with suboptions.

Exceptions

  isc::dhcp::DhcpConfigError | when pool parsing fails

Implements isc::dhcp::PoolsListParser.

Definition at line 1088 of file dhcp_parsers.cc.

References createPoolConfigParser().

Here is the call graph for this function:

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

- dhcp_parsers.h
- dhcp_parsers.cc