Kea 2.5.8
isc::dhcp::SharedNetwork4Parser Class Reference

Implements parser for IPv4 shared networks. More...

#include <shared_network_parser.h>

+ Inheritance diagram for isc::dhcp::SharedNetwork4Parser:

Public Member Functions

 SharedNetwork4Parser (bool check_iface=true)
 Constructor.
 
virtual ~SharedNetwork4Parser ()
 Virtual destructor.
 
SharedNetwork4Ptr parse (const data::ConstElementPtr &shared_network_data, bool encapsulate_options=true)
 Parses shared configuration information for IPv4 shared network.
 
- 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< OptionDataListParsercreateOptionDataListParser () const
 Returns an instance of the OptionDataListParser to be used in parsing the option-data structure.
 
virtual boost::shared_ptr< Subnets4ListConfigParsercreateSubnetsListParser () const
 Returns an instance of the Subnets4ListConfigParser to be used for parsing the subnets within the shared network.
 
- Protected Member Functions inherited from isc::dhcp::BaseNetworkParser
void parseAllocatorParams (const data::ConstElementPtr &network_data, NetworkPtr &network)
 Parses parameters pertaining to allocator selection.
 
void parseCacheParams (const data::ConstElementPtr &network_data, NetworkPtr &network)
 Parses parameters related to lease cache settings.
 
void parseCommon (const data::ConstElementPtr &network_data, NetworkPtr &network)
 Parses common parameters.
 
void parseDdnsParams (const data::ConstElementPtr &network_data, NetworkPtr &network)
 Parses parameters pertaining to DDNS behavior.
 
void parseOfferLft (const data::ConstElementPtr &network_data, Network4Ptr &network)
 Parses offer-lifetime parameter (v4 only)
 
void parsePdAllocatorParams (const data::ConstElementPtr &network_data, Network6Ptr &network)
 Parses parameters pertaining to prefix delegation allocator selection.
 
void parseTeePercents (const data::ConstElementPtr &network_data, NetworkPtr &network)
 Parses parameters related to "percent" timers settings.
 
- 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.
 

Protected Attributes

bool check_iface_
 Check if the specified interface exists in the system.
 

Additional Inherited Members

- Static Public Member Functions inherited from isc::dhcp::BaseNetworkParser
static void moveReservationMode (CfgGlobalsPtr config)
 Moves deprecated reservation-mode parameter to new reservations flags.
 
static void moveReservationMode (isc::data::ElementPtr config)
 Moves deprecated reservation-mode parameter to new reservations flags.
 
- 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::PositiongetPosition (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.
 

Detailed Description

Implements parser for IPv4 shared networks.

Definition at line 24 of file shared_network_parser.h.

Constructor & Destructor Documentation

◆ SharedNetwork4Parser()

isc::dhcp::SharedNetwork4Parser::SharedNetwork4Parser ( bool  check_iface = true)

Constructor.

Parameters
check_ifaceCheck if the specified interface exists in the system.

Definition at line 29 of file shared_network_parser.cc.

◆ ~SharedNetwork4Parser()

virtual isc::dhcp::SharedNetwork4Parser::~SharedNetwork4Parser ( )
inlinevirtual

Virtual destructor.

Definition at line 33 of file shared_network_parser.h.

Member Function Documentation

◆ createOptionDataListParser()

boost::shared_ptr< OptionDataListParser > isc::dhcp::SharedNetwork4Parser::createOptionDataListParser ( ) const
protectedvirtual

Returns an instance of the OptionDataListParser to be used in parsing the option-data structure.

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

Returns
an instance of the OptionDataListParser(AF_INET).

Definition at line 226 of file shared_network_parser.cc.

Referenced by parse().

◆ createSubnetsListParser()

boost::shared_ptr< Subnets4ListConfigParser > isc::dhcp::SharedNetwork4Parser::createSubnetsListParser ( ) const
protectedvirtual

Returns an instance of the Subnets4ListConfigParser to be used for parsing the subnets within the shared network.

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

Returns
an instance of the Subnets4ListConfigParser.

Definition at line 232 of file shared_network_parser.cc.

References check_iface_.

Referenced by parse().

◆ parse()

SharedNetwork4Ptr isc::dhcp::SharedNetwork4Parser::parse ( const data::ConstElementPtr shared_network_data,
bool  encapsulate_options = true 
)

Member Data Documentation

◆ check_iface_

bool isc::dhcp::SharedNetwork4Parser::check_iface_
protected

Check if the specified interface exists in the system.

Definition at line 70 of file shared_network_parser.h.

Referenced by createSubnetsListParser(), and parse().


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