Kea: isc::dhcp::ConfigBackendDHCPv6 Class Reference

| Kea 3.2.0-git

isc::dhcp::ConfigBackendDHCPv6 Class Referenceabstract

Interface implemented by DHCPv6 configuration backends. More...

`#include <config_backend_dhcp6.h>`

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

## Public Member Functions
virtual | ~ConfigBackendDHCPv6 ()
| Virtual destructor.
virtual void | createUpdateClientClass6 (const db::ServerSelector &server_selector, const ClientClassDefPtr &client_class, const std::string &follow_class_name)=0
| Creates or updates a client class.
virtual void | createUpdateGlobalParameter6 (const db::ServerSelector &server_selector, const data::StampedValuePtr &value)=0
| Creates or updates global parameter.
virtual void | createUpdateOption6 (const db::ServerSelector &selector, const std::string &shared_network_name, const OptionDescriptorPtr &option)=0
| Creates or updates shared network level option.
virtual void | createUpdateOption6 (const db::ServerSelector &server_selector, const asiolink::IOAddress &pd_pool_prefix, const uint8_t pd_pool_prefix_length, const OptionDescriptorPtr &option)=0
| Creates or updates prefix delegation pool level option.
virtual void | createUpdateOption6 (const db::ServerSelector &server_selector, const asiolink::IOAddress &pool_start_address, const asiolink::IOAddress &pool_end_address, const OptionDescriptorPtr &option)=0
| Creates or updates pool level option.
virtual void | createUpdateOption6 (const db::ServerSelector &server_selector, const OptionDescriptorPtr &option)=0
| Creates or updates global option.
virtual void | createUpdateOption6 (const db::ServerSelector &server_selector, const SubnetID &subnet_id, const OptionDescriptorPtr &option)=0
| Creates or updates subnet level option.
virtual void | createUpdateOptionDef6 (const db::ServerSelector &server_selector, const OptionDefinitionPtr &option_def)=0
| Creates or updates an option definition.
virtual void | createUpdateServer6 (const db::ServerPtr &server)=0
| Creates or updates a server.
virtual void | createUpdateSharedNetwork6 (const db::ServerSelector &server_selector, const SharedNetwork6Ptr &shared_network)=0
| Creates or updates a shared network.
virtual void | createUpdateSubnet6 (const db::ServerSelector &server_selector, const Subnet6Ptr &subnet)=0
| Creates or updates a subnet.
virtual uint64_t | deleteAllClientClasses6 (const db::ServerSelector &server_selector)=0
| Deletes all client classes.
virtual uint64_t | deleteAllGlobalParameters6 (const db::ServerSelector &server_selector)=0
| Deletes all global parameters.
virtual uint64_t | deleteAllOptionDefs6 (const db::ServerSelector &server_selector)=0
| Deletes all option definitions.
virtual uint64_t | deleteAllServers6 ()=0
| Deletes all servers from the backend except the logical server 'all'.
virtual uint64_t | deleteAllSharedNetworks6 (const db::ServerSelector &server_selector)=0
| Deletes all shared networks.
virtual uint64_t | deleteAllSubnets6 (const db::ServerSelector &server_selector)=0
| Deletes all subnets.
virtual uint64_t | deleteClientClass6 (const db::ServerSelector &server_selector, const std::string &name)=0
| Deletes a client class.
virtual uint64_t | deleteGlobalParameter6 (const db::ServerSelector &server_selector, const std::string &name)=0
| Deletes global parameter.
virtual uint64_t | deleteOption6 (const db::ServerSelector &selector, const std::string &shared_network_name, const uint16_t code, const std::string &space, ClientClassesPtr client_classes=ClientClassesPtr())=0
| Deletes shared network level option.
virtual uint64_t | deleteOption6 (const db::ServerSelector &server_selector, const asiolink::IOAddress &pd_pool_prefix, const uint8_t pd_pool_prefix_length, const uint16_t code, const std::string &space, ClientClassesPtr client_classes=ClientClassesPtr())=0
| Deletes prefix delegation pool level option.
virtual uint64_t | deleteOption6 (const db::ServerSelector &server_selector, const asiolink::IOAddress &pool_start_address, const asiolink::IOAddress &pool_end_address, const uint16_t code, const std::string &space, ClientClassesPtr client_classes=ClientClassesPtr())=0
| Deletes pool level option.
virtual uint64_t | deleteOption6 (const db::ServerSelector &server_selector, const SubnetID &subnet_id, const uint16_t code, const std::string &space, ClientClassesPtr client_classes=ClientClassesPtr())=0
| Deletes subnet level option.
virtual uint64_t | deleteOption6 (const db::ServerSelector &server_selector, const uint16_t code, const std::string &space, ClientClassesPtr client_classes=ClientClassesPtr())=0
| Deletes global option.
virtual uint64_t | deleteOptionDef6 (const db::ServerSelector &server_selector, const uint16_t code, const std::string &space, bool force=false)=0
| Deletes option definition.
virtual uint64_t | deleteServer6 (const data::ServerTag &server_tag)=0
| Deletes a server from the backend.
virtual uint64_t | deleteSharedNetwork6 (const db::ServerSelector &server_selector, const std::string &name)=0
| Deletes shared network by name.
virtual uint64_t | deleteSharedNetworkSubnets6 (const db::ServerSelector &server_selector, const std::string &shared_network_name)=0
| Deletes all subnets belonging to a specified shared network.
virtual uint64_t | deleteSubnet6 (const db::ServerSelector &server_selector, const std::string &subnet_prefix)=0
| Deletes subnet by prefix.
virtual uint64_t | deleteSubnet6 (const db::ServerSelector &server_selector, const SubnetID &subnet_id)=0
| Deletes subnet by identifier.
virtual ClientClassDictionary | getAllClientClasses6 (const db::ServerSelector &selector) const =0
| Retrieves all client classes.
virtual data::StampedValueCollection | getAllGlobalParameters6 (const db::ServerSelector &selector) const =0
| Retrieves all global parameters.
virtual OptionDefContainer | getAllOptionDefs6 (const db::ServerSelector &server_selector) const =0
| Retrieves all option definitions.
virtual OptionContainer | getAllOptions6 (const db::ServerSelector &server_selector) const =0
| Retrieves all global options.
virtual db::ServerCollection | getAllServers6 () const =0
| Retrieves all servers.
virtual SharedNetwork6Collection | getAllSharedNetworks6 (const db::ServerSelector &server_selector) const =0
| Retrieves all shared networks.
virtual Subnet6Collection | getAllSubnets6 (const db::ServerSelector &server_selector) const =0
| Retrieves all subnets.
virtual ClientClassDefPtr | getClientClass6 (const db::ServerSelector &selector, const std::string &name) const =0
| Retrieves a client class by name.
virtual data::StampedValuePtr | getGlobalParameter6 (const db::ServerSelector &selector, const std::string &name) const =0
| Retrieves global parameter value.
virtual ClientClassDictionary | getModifiedClientClasses6 (const db::ServerSelector &selector, const boost::posix_time::ptime &modification_time) const =0
| Retrieves client classes modified after specified time.
virtual data::StampedValueCollection | getModifiedGlobalParameters6 (const db::ServerSelector &selector, const boost::posix_time::ptime &modification_time) const =0
| Retrieves global parameters modified after specified time.
virtual OptionDefContainer | getModifiedOptionDefs6 (const db::ServerSelector &server_selector, const boost::posix_time::ptime &modification_time) const =0
| Retrieves option definitions modified after specified time.
virtual OptionContainer | getModifiedOptions6 (const db::ServerSelector &selector, const boost::posix_time::ptime &modification_time) const =0
| Retrieves options modified after specified time.
virtual SharedNetwork6Collection | getModifiedSharedNetworks6 (const db::ServerSelector &server_selector, const boost::posix_time::ptime &modification_time) const =0
| Retrieves shared networks modified after specified time.
virtual Subnet6Collection | getModifiedSubnets6 (const db::ServerSelector &server_selector, const boost::posix_time::ptime &modification_time) const =0
| Retrieves subnets modified after specified time.
virtual OptionDescriptorPtr | getOption6 (const db::ServerSelector &server_selector, const uint16_t code, const std::string &space, const ClientClassesPtr client_classes=ClientClassesPtr()) const =0
| Retrieves single option by code and space.
virtual OptionDefinitionPtr | getOptionDef6 (const db::ServerSelector &server_selector, const uint16_t code, const std::string &space) const =0
| Retrieves single option definition by code and space.
virtual db::AuditEntryCollection | getRecentAuditEntries (const db::ServerSelector &server_selector, const boost::posix_time::ptime &modification_time, const uint64_t &modification_id) const =0
| Retrieves the most recent audit entries.
virtual db::ServerPtr | getServer6 (const data::ServerTag &server_tag) const =0
| Retrieves a server.
virtual SharedNetwork6Ptr | getSharedNetwork6 (const db::ServerSelector &server_selector, const std::string &name) const =0
| Retrieves shared network by name.
virtual Subnet6Collection | getSharedNetworkSubnets6 (const db::ServerSelector &server_selector, const std::string &shared_network_name) const =0
| Retrieves all subnets belonging to a specified shared network.
virtual Subnet6Ptr | getSubnet6 (const db::ServerSelector &server_selector, const std::string &subnet_prefix) const =0
| Retrieves a single subnet by subnet_prefix.
virtual Subnet6Ptr | getSubnet6 (const db::ServerSelector &server_selector, const SubnetID &subnet_id) const =0
| Retrieves a single subnet by subnet identifier.
Public Member Functions inherited from isc::cb::BaseConfigBackend
virtual | ~BaseConfigBackend ()
| Virtual destructor.
virtual std::string | getHost () const =0
| Returns backend host.
virtual isc::db::DatabaseConnection::ParameterMap | getParameters () const
| Return backend parameters.
virtual uint16_t | getPort () const =0
| Returns backend port number.
virtual std::string | getType () const =0
| Returns backend type in the textual format.
virtual bool | isUnusable ()
| Flag which indicates if the config backend has an unusable connection.

## Detailed Description

Interface implemented by DHCPv6 configuration backends.

All POSIX times specified in the methods belonging to this class must be local times.

Below, we describe the general rules of using the server selectors when creating, updating, fetching and deleting the configuration elements from the backends. The detailed information can be found in the descriptions of the individual methods. The backend implementations must not be in conflict with the rules described here but may sometimes lack some functionality and not support some of the server selectors for some API calls. In such cases the backend's documentation should be clear about these cases and document the exceptions thrown when unsupported selector is used for a given method.

The `ServerSelector` class defines 5 types of selectors:

- ANY: server tag/id is not a part of the database query, i.e. the object in the database is identified by some unique property, e.g. subnet identifier, shared network name etc.
- UNASSIGNED: query pertains to the objects in the database which are associated with no particular server (including the logical server "all"). Objects associated with any server are never selected.
- ALL: query pertains only to the objects in the database which are associated with the logical server "all". Those objects are shared between all servers using the database. This server selector never returns objects explicitly associated with the particular servers defined by the user.
- ONE: query pertains to the objects used by one particular server. The server uses both the objects explicitly associated with it and and the objects associated with the logical server "all". Therefore the result returned for this server selector combines configuration elements associated with this server and with "all" servers. In case if there are two instances of the configuration information, one associated with "all" servers and one associated with the server, the information associated with the server takes precedence. When using this selector to delete objects from the database, the deletion pertains only to the objects associated with the given server tag. It doesn't delete the objects associated with "all" servers.
- MULTIPLE: query pertains to the objects used by multiple servers listed in the selector. It allows for querying for a list of objects associated with multiple servers and/or logical server "all".

There are limitations imposed on the API calls what server selectors are allowed for them. Configuration Backend implementations must not be in conflict with those limitations. In particular, the implementation must not permit for server selectors which are not allowed here. However, the backend implementation may be more restrictive and not allow some of the server selectors for some API calls. This should, however, be properly documented.

Definition at line 87 of file config_backend_dhcp6.h.

## Constructor & Destructor Documentation

## ◆ ~ConfigBackendDHCPv6()

virtual isc::dhcp::ConfigBackendDHCPv6::~ConfigBackendDHCPv6 | ( |  | ) |
| inlinevirtual

Virtual destructor.

Definition at line 91 of file config_backend_dhcp6.h.

## Member Function Documentation

## ◆ createUpdateClientClass6()

virtual void isc::dhcp::ConfigBackendDHCPv6::createUpdateClientClass6 | ( | const db::ServerSelector & | server_selector,
|  | const ClientClassDefPtr & | client_class,
|  | const std::string & | follow_class_name )
| pure virtual

Creates or updates a client class.

Parameters

  server_selector | Server selector.
  client_class | Client class to be added or updated.
  follow_class_name | name of the class after which the new or updated class should be positioned. An empty value causes the class to be appended at the end of the class hierarchy.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::createUpdateClientClass6().

## ◆ createUpdateGlobalParameter6()

virtual void isc::dhcp::ConfigBackendDHCPv6::createUpdateGlobalParameter6 | ( | const db::ServerSelector & | server_selector,
|  | const data::StampedValuePtr & | value )
| pure virtual

Creates or updates global parameter.

Allowed server selectors: ALL, ONE. Not allowed server selectors: ANY, UNASSIGNED, MULTIPLE.

Parameters

  server_selector | Server selector.
  value | Value of the global parameter.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::createUpdateGlobalParameter6().

## ◆ createUpdateOption6() [1/5]

virtual void isc::dhcp::ConfigBackendDHCPv6::createUpdateOption6 | ( | const db::ServerSelector & | selector,
|  | const std::string & | shared_network_name,
|  | const OptionDescriptorPtr & | option )
| pure virtual

Creates or updates shared network level option.

Allowed server selector: ANY. Not allowed server selectors: UNASSIGNED, ALL, ONE, MULTIPLE.

Parameters

  selector | Server selector.
  shared_network_name | Name of a shared network to which option belongs.
  option | Option to be added or updated.

## ◆ createUpdateOption6() [2/5]

virtual void isc::dhcp::ConfigBackendDHCPv6::createUpdateOption6 | ( | const db::ServerSelector & | server_selector,
|  | const asiolink::IOAddress & | pd_pool_prefix,
|  | const uint8_t | pd_pool_prefix_length,
|  | const OptionDescriptorPtr & | option )
| pure virtual

Creates or updates prefix delegation pool level option.

Allowed server selector: ANY. Not allowed server selectors: UNASSIGNED, ALL, ONE, MULTIPLE.

Parameters

  server_selector | Server selector.
  pd_pool_prefix | Address part of the prefix of the prefix delegation pool to which the option belongs.
  pd_pool_prefix_length | Prefix length of the prefix delegation pool to which the option belongs.
  option | Option to be added or updated.

## ◆ createUpdateOption6() [3/5]

virtual void isc::dhcp::ConfigBackendDHCPv6::createUpdateOption6 | ( | const db::ServerSelector & | server_selector,
|  | const asiolink::IOAddress & | pool_start_address,
|  | const asiolink::IOAddress & | pool_end_address,
|  | const OptionDescriptorPtr & | option )
| pure virtual

Creates or updates pool level option.

Allowed server selector: ANY. Not allowed server selectors: UNASSIGNED, ALL, ONE, MULTIPLE.

Parameters

  server_selector | Server selector.
  pool_start_address | Lower bound address of the pool to which the option belongs.
  pool_end_address | Upper bound address of the pool to which the option belongs.
  option | Option to be added or updated.

## ◆ createUpdateOption6() [4/5]

virtual void isc::dhcp::ConfigBackendDHCPv6::createUpdateOption6 | ( | const db::ServerSelector & | server_selector,
|  | const OptionDescriptorPtr & | option )
| pure virtual

Creates or updates global option.

Allowed server selectors: ALL, ONE. Not allowed server selectors: ANY, UNASSIGNED, MULTIPLE.

Parameters

  server_selector | Server selector.
  option | Option to be added or updated.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::createUpdateOption6(), isc::dhcp::ConfigBackendPoolDHCPv6::createUpdateOption6(), isc::dhcp::ConfigBackendPoolDHCPv6::createUpdateOption6(), isc::dhcp::ConfigBackendPoolDHCPv6::createUpdateOption6(), and isc::dhcp::ConfigBackendPoolDHCPv6::createUpdateOption6().

## ◆ createUpdateOption6() [5/5]

virtual void isc::dhcp::ConfigBackendDHCPv6::createUpdateOption6 | ( | const db::ServerSelector & | server_selector,
|  | const SubnetID & | subnet_id,
|  | const OptionDescriptorPtr & | option )
| pure virtual

Creates or updates subnet level option.

Allowed server selector: ANY. Not allowed server selectors: UNASSIGNED, ALL, ONE, MULTIPLE.

Parameters

  server_selector | Server selector.
  subnet_id | Identifier of a subnet to which option belongs.
  option | Option to be added or updated.

## ◆ createUpdateOptionDef6()

virtual void isc::dhcp::ConfigBackendDHCPv6::createUpdateOptionDef6 | ( | const db::ServerSelector & | server_selector,
|  | const OptionDefinitionPtr & | option_def )
| pure virtual

Creates or updates an option definition.

Allowed server selectors: ALL, ONE. Not allowed server selectors: ANY, UNASSIGNED, MULTIPLE.

Parameters

  server_selector | Server selector.
  option_def | Option definition to be added or updated.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::createUpdateOptionDef6().

## ◆ createUpdateServer6()

virtual void isc::dhcp::ConfigBackendDHCPv6::createUpdateServer6 | ( | const db::ServerPtr & | server | ) |
| pure virtual

Creates or updates a server.

Parameters

  server | Instance of the server to be stored.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::createUpdateServer6().

## ◆ createUpdateSharedNetwork6()

virtual void isc::dhcp::ConfigBackendDHCPv6::createUpdateSharedNetwork6 | ( | const db::ServerSelector & | server_selector,
|  | const SharedNetwork6Ptr & | shared_network )
| pure virtual

Creates or updates a shared network.

Allowed server selectors: UNASSIGNED, ALL, ONE, MULTIPLE. Not allowed server selector: ANY.

Parameters

  server_selector | Server selector.
  shared_network | Shared network to be added or updated.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::createUpdateSharedNetwork6().

## ◆ createUpdateSubnet6()

virtual void isc::dhcp::ConfigBackendDHCPv6::createUpdateSubnet6 | ( | const db::ServerSelector & | server_selector,
|  | const Subnet6Ptr & | subnet )
| pure virtual

Creates or updates a subnet.

Allowed server selectors: UNASSIGNED, ALL, ONE, MULTIPLE. Not allowed server selector: ANY.

Parameters

  server_selector | Server selector.
  subnet | Subnet to be added or updated.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::createUpdateSubnet6().

## ◆ deleteAllClientClasses6()

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteAllClientClasses6 | ( | const db::ServerSelector & | server_selector | ) |
| pure virtual

Deletes all client classes.

Parameters

  server_selector | Server selector.

Returns
  Number of deleted client classes.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::deleteAllClientClasses6().

## ◆ deleteAllGlobalParameters6()

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteAllGlobalParameters6 | ( | const db::ServerSelector & | server_selector | ) |
| pure virtual

Deletes all global parameters.

Allowed server selectors: ALL, ONE. Not allowed server selectors: ANY, UNASSIGNED, MULTIPLE.

Parameters

  server_selector | Server selector.

Returns
  Number of deleted global parameters.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::deleteAllGlobalParameters6().

## ◆ deleteAllOptionDefs6()

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteAllOptionDefs6 | ( | const db::ServerSelector & | server_selector | ) |
| pure virtual

Deletes all option definitions.

Allowed server selectors: ALL, ONE. Not allowed server selectors: ANY, UNASSIGNED, MULTIPLE.

Parameters

  server_selector | Server selector.

Returns
  Number of deleted option definitions.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::deleteAllOptionDefs6().

## ◆ deleteAllServers6()

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteAllServers6 | ( |  | ) |
| pure virtual

Deletes all servers from the backend except the logical server 'all'.

Returns
  Number of deleted servers.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::deleteAllServers6().

## ◆ deleteAllSharedNetworks6()

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteAllSharedNetworks6 | ( | const db::ServerSelector & | server_selector | ) |
| pure virtual

Deletes all shared networks.

Allowed server selectors: UNASSIGNED, ALL, ONE. Not allowed server selectors: ANY, MULTIPLE.

Parameters

  server_selector | Server selector.

Returns
  Number of deleted shared networks.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::deleteAllSharedNetworks6().

## ◆ deleteAllSubnets6()

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteAllSubnets6 | ( | const db::ServerSelector & | server_selector | ) |
| pure virtual

Deletes all subnets.

Allowed server selectors: UNASSIGNED, ALL, ONE. Not allowed server selectors: ANY, MULTIPLE.

Parameters

  server_selector | Server selector.

Returns
  Number of deleted subnets.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::deleteAllSubnets6().

## ◆ deleteClientClass6()

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteClientClass6 | ( | const db::ServerSelector & | server_selector,
|  | const std::string & | name )
| pure virtual

Deletes a client class.

Parameters

  server_selector | Server selector.
  name | Name of the class to be deleted.

Returns
  Number of deleted client classes.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::deleteClientClass6().

## ◆ deleteGlobalParameter6()

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteGlobalParameter6 | ( | const db::ServerSelector & | server_selector,
|  | const std::string & | name )
| pure virtual

Deletes global parameter.

Allowed server selectors: ALL, ONE. Not allowed server selectors: ANY, UNASSIGNED, MULTIPLE.

Parameters

  server_selector | Server selector.
  name | Name of the global parameter to be deleted.

Returns
  Number of deleted global parameters.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::deleteGlobalParameter6().

## ◆ deleteOption6() [1/5]

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteOption6 | ( | const db::ServerSelector & | selector,
|  | const std::string & | shared_network_name,
|  | const uint16_t | code,
|  | const std::string & | space,
|  | ClientClassesPtr | client_classes = ClientClassesPtr() )
| pure virtual

Deletes shared network level option.

Allowed server selector: ANY. Not allowed server selectors: UNASSIGNED, ALL, ONE, MULTIPLE.

Parameters

  selector | Server selector.
  shared_network_name | Name of the shared network which option belongs to.
  code | Code of the option to be deleted.
  space | Option space of the option to be deleted.
  client_classes | Optional client classes list of the option to be deleted. Defaults to an empty pointer.

Returns
  Number of deleted options.

## ◆ deleteOption6() [2/5]

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteOption6 | ( | const db::ServerSelector & | server_selector,
|  | const asiolink::IOAddress & | pd_pool_prefix,
|  | const uint8_t | pd_pool_prefix_length,
|  | const uint16_t | code,
|  | const std::string & | space,
|  | ClientClassesPtr | client_classes = ClientClassesPtr() )
| pure virtual

Deletes prefix delegation pool level option.

Allowed server selector: ANY. Not allowed server selectors: UNASSIGNED, ALL, ONE, MULTIPLE.

Parameters

  server_selector | Server selector.
  pd_pool_prefix | Address part of the prefix of the prefix delegation pool to which the deleted option belongs.
  pd_pool_prefix_length | Prefix length of the prefix delegation pool to which the deleted option belongs.
  code | Code of the deleted option.
  space | Option space of the deleted option.
  client_classes | Optional client classes list of the option to be deleted. Defaults to an empty pointer.

Returns
  Number of deleted options.

## ◆ deleteOption6() [3/5]

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteOption6 | ( | const db::ServerSelector & | server_selector,
|  | const asiolink::IOAddress & | pool_start_address,
|  | const asiolink::IOAddress & | pool_end_address,
|  | const uint16_t | code,
|  | const std::string & | space,
|  | ClientClassesPtr | client_classes = ClientClassesPtr() )
| pure virtual

Deletes pool level option.

Allowed server selector: ANY. Not allowed server selectors: UNASSIGNED, ALL, ONE, MULTIPLE.

Parameters

  server_selector | Server selector.
  pool_start_address | Lower bound address of the pool to which deleted option belongs.
  pool_end_address | Upper bound address of the pool to which the deleted option belongs.
  code | Code of the deleted option.
  space | Option space of the deleted option.
  client_classes | Optional client classes list of the option to be deleted. Defaults to an empty pointer.

Returns
  Number of deleted options.

## ◆ deleteOption6() [4/5]

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteOption6 | ( | const db::ServerSelector & | server_selector,
|  | const SubnetID & | subnet_id,
|  | const uint16_t | code,
|  | const std::string & | space,
|  | ClientClassesPtr | client_classes = ClientClassesPtr() )
| pure virtual

Deletes subnet level option.

Allowed server selector: ANY. Not allowed server selectors: UNASSIGNED, ALL, ONE, MULTIPLE.

Parameters

  server_selector | Server selector.
  subnet_id | Identifier of the subnet to which deleted option belongs.
  code | Code of the deleted option.
  space | Option space of the deleted option.
  client_classes | Optional client classes list of the option to be deleted. Defaults to an empty pointer.

Returns
  Number of deleted options.

## ◆ deleteOption6() [5/5]

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteOption6 | ( | const db::ServerSelector & | server_selector,
|  | const uint16_t | code,
|  | const std::string & | space,
|  | ClientClassesPtr | client_classes = ClientClassesPtr() )
| pure virtual

Deletes global option.

Allowed server selectors: ALL, ONE. Not allowed server selectors: ANY, UNASSIGNED, MULTIPLE.

Parameters

  server_selector | Server selector.
  code | Code of the option to be deleted.
  space | Option space of the option to be deleted.
  client_classes | Optional client classes list of the option to be deleted. Defaults to an empty pointer.

Returns
  Number of deleted options.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::deleteOption6(), isc::dhcp::ConfigBackendPoolDHCPv6::deleteOption6(), isc::dhcp::ConfigBackendPoolDHCPv6::deleteOption6(), isc::dhcp::ConfigBackendPoolDHCPv6::deleteOption6(), and isc::dhcp::ConfigBackendPoolDHCPv6::deleteOption6().

## ◆ deleteOptionDef6()

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteOptionDef6 | ( | const db::ServerSelector & | server_selector,
|  | const uint16_t | code,
|  | const std::string & | space,
|  | bool | force = false )
| pure virtual

Deletes option definition.

Allowed server selectors: ALL, ONE. Not allowed server selectors: ANY, UNASSIGNED, MULTIPLE.

Parameters

  server_selector | Server selector.
  code | Code of the option to be deleted.
  space | Option space of the option to be deleted.
  force | When true, delete is done without checking for dependent options. Defaults to false.

Returns
  Number of deleted option definitions.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::deleteOptionDef6().

## ◆ deleteServer6()

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteServer6 | ( | const data::ServerTag & | server_tag | ) |
| pure virtual

Deletes a server from the backend.

Parameters

  server_tag | Tag of the server to be deleted.

Returns
  Number of deleted servers.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::deleteServer6().

## ◆ deleteSharedNetwork6()

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteSharedNetwork6 | ( | const db::ServerSelector & | server_selector,
|  | const std::string & | name )
| pure virtual

Deletes shared network by name.

Allowed server selectors: ANY, UNASSIGNED, ALL, ONE. Not allowed server selector: MULTIPLE.

Parameters

  server_selector | Server selector.
  name | Name of the shared network to be deleted.

Returns
  Number of deleted shared networks.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::deleteSharedNetwork6().

## ◆ deleteSharedNetworkSubnets6()

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteSharedNetworkSubnets6 | ( | const db::ServerSelector & | server_selector,
|  | const std::string & | shared_network_name )
| pure virtual

Deletes all subnets belonging to a specified shared network.

Allowed server selector: ANY. Not allowed server selectors: UNASSIGNED, ALL, ONE, MULTIPLE.

Parameters

  server_selector | Server selector.
  shared_network_name | Name of the shared network for which the deleted subnets should belongs to.

Returns
  Number of deleted subnets.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::deleteSharedNetworkSubnets6().

## ◆ deleteSubnet6() [1/2]

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteSubnet6 | ( | const db::ServerSelector & | server_selector,
|  | const std::string & | subnet_prefix )
| pure virtual

Deletes subnet by prefix.

Allowed server selectors: ANY, UNASSIGNED, ALL, ONE. Not allowed server selector: MULTIPLE.

Parameters

  server_selector | Server selector.
  subnet_prefix | Prefix of the subnet to be deleted.

Returns
  Number of deleted subnets.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::deleteSubnet6(), and isc::dhcp::ConfigBackendPoolDHCPv6::deleteSubnet6().

## ◆ deleteSubnet6() [2/2]

virtual uint64_t isc::dhcp::ConfigBackendDHCPv6::deleteSubnet6 | ( | const db::ServerSelector & | server_selector,
|  | const SubnetID & | subnet_id )
| pure virtual

Deletes subnet by identifier.

Allowed server selectors: ANY, UNASSIGNED, ALL, ONE. Not allowed server selector: MULTIPLE.

Parameters

  server_selector | Server selector.
  subnet_id | Identifier of the subnet to be deleted.

Returns
  Number of deleted subnets.

## ◆ getAllClientClasses6()

virtual ClientClassDictionary isc::dhcp::ConfigBackendDHCPv6::getAllClientClasses6 | ( | const db::ServerSelector & | selector | ) | const
| pure virtual

Retrieves all client classes.

Parameters

  selector | Server selector.

Returns
  Collection of client classes.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getAllClientClasses6().

## ◆ getAllGlobalParameters6()

virtual data::StampedValueCollection isc::dhcp::ConfigBackendDHCPv6::getAllGlobalParameters6 | ( | const db::ServerSelector & | selector | ) | const
| pure virtual

Retrieves all global parameters.

Allowed server selectors: ALL, ONE, MULTIPLE. Not allowed server selectors: ANY, UNASSIGNED.

Parameters

  selector | Server selector.

Returns
  Collection of global parameters.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getAllGlobalParameters6().

## ◆ getAllOptionDefs6()

virtual OptionDefContainer isc::dhcp::ConfigBackendDHCPv6::getAllOptionDefs6 | ( | const db::ServerSelector & | server_selector | ) | const
| pure virtual

Retrieves all option definitions.

Allowed server selectors: ALL, ONE, MULTIPLE. Not allowed server selectors: ANY, UNASSIGNED.

Parameters

  server_selector | Server selector.

Returns
  Collection of option definitions or empty collection if no option definition found.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getAllOptionDefs6().

## ◆ getAllOptions6()

virtual OptionContainer isc::dhcp::ConfigBackendDHCPv6::getAllOptions6 | ( | const db::ServerSelector & | server_selector | ) | const
| pure virtual

Retrieves all global options.

Allowed server selectors: ALL, ONE, MULTIPLE. Not allowed server selectors: ANY, UNASSIGNED.

Parameters

  server_selector | Server selector.

Returns
  Collection of global options or empty collection if no option found.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getAllOptions6().

## ◆ getAllServers6()

virtual db::ServerCollection isc::dhcp::ConfigBackendDHCPv6::getAllServers6 | ( |  | ) | const
| pure virtual

Retrieves all servers.

This method returns the list of servers excluding the logical server 'all'.

Returns
  Collection of servers from the backend.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getAllServers6().

## ◆ getAllSharedNetworks6()

virtual SharedNetwork6Collection isc::dhcp::ConfigBackendDHCPv6::getAllSharedNetworks6 | ( | const db::ServerSelector & | server_selector | ) | const
| pure virtual

Retrieves all shared networks.

Allowed server selectors: UNASSIGNED, ALL, ONE, MULTIPLE. Not allowed server selector: ANY.

Parameters

  server_selector | Server selector.

Returns
  Collection of shared network or empty collection if no shared network found.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getAllSharedNetworks6().

## ◆ getAllSubnets6()

virtual Subnet6Collection isc::dhcp::ConfigBackendDHCPv6::getAllSubnets6 | ( | const db::ServerSelector & | server_selector | ) | const
| pure virtual

Retrieves all subnets.

Allowed server selectors: UNASSIGNED, ALL, ONE, MULTIPLE. Not allowed server selector: ANY.

Parameters

  server_selector | Server selector.

Returns
  Collection of subnets or empty collection if no subnet found.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getAllSubnets6().

## ◆ getClientClass6()

virtual ClientClassDefPtr isc::dhcp::ConfigBackendDHCPv6::getClientClass6 | ( | const db::ServerSelector & | selector,
|  | const std::string & | name ) const
| pure virtual

Retrieves a client class by name.

Parameters

  selector | Server selector.
  name | Client class name.

Returns
  Pointer to the retrieved client class.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getClientClass6().

## ◆ getGlobalParameter6()

virtual data::StampedValuePtr isc::dhcp::ConfigBackendDHCPv6::getGlobalParameter6 | ( | const db::ServerSelector & | selector,
|  | const std::string & | name ) const
| pure virtual

Retrieves global parameter value.

Allowed server selectors: ALL, ONE. Not allowed server selectors: ANY, UNASSIGNED, MULTIPLE.

Parameters

  selector | Server selector.
  name | Name of the global parameter to be retrieved.

Returns
  Value of the global parameter or null if parameter doesn't exist.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getGlobalParameter6().

## ◆ getModifiedClientClasses6()

virtual ClientClassDictionary isc::dhcp::ConfigBackendDHCPv6::getModifiedClientClasses6 | ( | const db::ServerSelector & | selector,
|  | const boost::posix_time::ptime & | modification_time ) const
| pure virtual

Retrieves client classes modified after specified time.

Parameters

  selector | Server selector.
  modification_time | Modification time.

Returns
  Collection of client classes.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getModifiedClientClasses6().

## ◆ getModifiedGlobalParameters6()

virtual data::StampedValueCollection isc::dhcp::ConfigBackendDHCPv6::getModifiedGlobalParameters6 | ( | const db::ServerSelector & | selector,
|  | const boost::posix_time::ptime & | modification_time ) const
| pure virtual

Retrieves global parameters modified after specified time.

Allowed server selectors: ALL, ONE, MULTIPLE. Not allowed server selectors: ANY, UNASSIGNED.

Parameters

  selector | Server selector.
  modification_time | Modification time.

Returns
  Collection of modified global parameters.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getModifiedGlobalParameters6().

## ◆ getModifiedOptionDefs6()

virtual OptionDefContainer isc::dhcp::ConfigBackendDHCPv6::getModifiedOptionDefs6 | ( | const db::ServerSelector & | server_selector,
|  | const boost::posix_time::ptime & | modification_time ) const
| pure virtual

Retrieves option definitions modified after specified time.

Allowed server selectors: ALL, ONE, MULTIPLE. Not allowed server selectors: ANY, UNASSIGNED.

Parameters

  server_selector | Server selector.
  modification_time | Lower bound option definition modification time.

Returns
  Collection of option definitions or empty collection if no option definition found.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getModifiedOptionDefs6().

## ◆ getModifiedOptions6()

virtual OptionContainer isc::dhcp::ConfigBackendDHCPv6::getModifiedOptions6 | ( | const db::ServerSelector & | selector,
|  | const boost::posix_time::ptime & | modification_time ) const
| pure virtual

Retrieves options modified after specified time.

Allowed server selectors: ALL, ONE, MULTIPLE. Not allowed server selectors: ANY, UNASSIGNED.

Parameters

  selector | Server selector.
  modification_time | Lower bound option modification time.

Returns
  Collection of global options or empty collection if no option found.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getModifiedOptions6().

## ◆ getModifiedSharedNetworks6()

virtual SharedNetwork6Collection isc::dhcp::ConfigBackendDHCPv6::getModifiedSharedNetworks6 | ( | const db::ServerSelector & | server_selector,
|  | const boost::posix_time::ptime & | modification_time ) const
| pure virtual

Retrieves shared networks modified after specified time.

Allowed server selectors: UNASSIGNED, ALL, ONE, MULTIPLE. Not allowed server selector: ANY.

Parameters

  server_selector | Server selector.
  modification_time | Lower bound shared network modification time.

Returns
  Collection of shared network or empty collection if no shared network found.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getModifiedSharedNetworks6().

## ◆ getModifiedSubnets6()

virtual Subnet6Collection isc::dhcp::ConfigBackendDHCPv6::getModifiedSubnets6 | ( | const db::ServerSelector & | server_selector,
|  | const boost::posix_time::ptime & | modification_time ) const
| pure virtual

Retrieves subnets modified after specified time.

Allowed server selectors: UNASSIGNED, ALL, ONE, MULTIPLE. Not allowed server selector: ANY.

Parameters

  server_selector | Server selector.
  modification_time | Lower bound subnet modification time.

Returns
  Collection of subnets or empty collection if no subnet found.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getModifiedSubnets6().

## ◆ getOption6()

virtual OptionDescriptorPtr isc::dhcp::ConfigBackendDHCPv6::getOption6 | ( | const db::ServerSelector & | server_selector,
|  | const uint16_t | code,
|  | const std::string & | space,
|  | const ClientClassesPtr | client_classes = ClientClassesPtr() ) const
| pure virtual

Retrieves single option by code and space.

Allowed server selectors: ALL, ONE. Not allowed server selectors: ANY, UNASSIGNED, MULTIPLE.

Parameters

  server_selector | Server selector.
  code | Option code.
  space | Option space.
  client_classes | Optional client classes list of the option to be deleted. Defaults to an empty pointer.

Returns
  Pointer to the retrieved option descriptor or null if no option was found.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getOption6().

## ◆ getOptionDef6()

virtual OptionDefinitionPtr isc::dhcp::ConfigBackendDHCPv6::getOptionDef6 | ( | const db::ServerSelector & | server_selector,
|  | const uint16_t | code,
|  | const std::string & | space ) const
| pure virtual

Retrieves single option definition by code and space.

Allowed server selectors: ALL, ONE. Not allowed server selectors: ANY, UNASSIGNED, MULTIPLE.

Parameters

  server_selector | Server selector.
  code | Code of the option to be retrieved.
  space | Option space of the option to be retrieved.

Returns
  Pointer to the option definition or NULL if not found.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getOptionDef6().

## ◆ getRecentAuditEntries()

virtual db::AuditEntryCollection isc::dhcp::ConfigBackendDHCPv6::getRecentAuditEntries | ( | const db::ServerSelector & | server_selector,
|  | const boost::posix_time::ptime & | modification_time,
|  | const uint64_t & | modification_id ) const
| pure virtual

Retrieves the most recent audit entries.

Allowed server selectors: ALL, ONE. Not allowed server selectors: ANY, UNASSIGNED, MULTIPLE.

Parameters

  server_selector | Server selector.
  modification_time | Timestamp being a lower limit for the returned result set, i.e. entries later than specified time are returned.
  modification_id | Identifier being a lower limit for the returned result set, used when two (or more) entries have the same modification_time.

Returns
  Collection of audit entries.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getRecentAuditEntries().

## ◆ getServer6()

virtual db::ServerPtr isc::dhcp::ConfigBackendDHCPv6::getServer6 | ( | const data::ServerTag & | server_tag | ) | const
| pure virtual

Retrieves a server.

Parameters

  server_tag | Tag of the server to be retrieved.

Returns
  Pointer to the server instance or null pointer if no server with the particular tag was found.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getServer6().

## ◆ getSharedNetwork6()

virtual SharedNetwork6Ptr isc::dhcp::ConfigBackendDHCPv6::getSharedNetwork6 | ( | const db::ServerSelector & | server_selector,
|  | const std::string & | name ) const
| pure virtual

Retrieves shared network by name.

Allowed server selectors: ANY, UNASSIGNED, ALL, ONE. Not allowed server selector: MULTIPLE.

Parameters

  server_selector | Server selector.
  name | Name of the shared network to be retrieved.

Returns
  Pointer to the shared network or NULL if not found.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getSharedNetwork6().

## ◆ getSharedNetworkSubnets6()

virtual Subnet6Collection isc::dhcp::ConfigBackendDHCPv6::getSharedNetworkSubnets6 | ( | const db::ServerSelector & | server_selector,
|  | const std::string & | shared_network_name ) const
| pure virtual

Retrieves all subnets belonging to a specified shared network.

Allowed server selector: ANY. Not allowed server selectors: UNASSIGNED, ALL, ONE, MULTIPLE.

Parameters

  server_selector | Server selector.
  shared_network_name | Name of the shared network for which the retrieved subnets should belongs to.

Returns
  Collection of subnets or empty collection if no subnet found.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getSharedNetworkSubnets6().

## ◆ getSubnet6() [1/2]

virtual Subnet6Ptr isc::dhcp::ConfigBackendDHCPv6::getSubnet6 | ( | const db::ServerSelector & | server_selector,
|  | const std::string & | subnet_prefix ) const
| pure virtual

Retrieves a single subnet by subnet_prefix.

Allowed server selectors: ANY, UNASSIGNED, ALL, ONE. Not allowed server selector: MULTIPLE.

Parameters

  server_selector | Server selector.
  subnet_prefix | Prefix of the subnet to be retrieved.

Returns
  Pointer to the retrieved subnet or NULL if not found.

Referenced by isc::dhcp::ConfigBackendPoolDHCPv6::getSubnet6(), and isc::dhcp::ConfigBackendPoolDHCPv6::getSubnet6().

## ◆ getSubnet6() [2/2]

virtual Subnet6Ptr isc::dhcp::ConfigBackendDHCPv6::getSubnet6 | ( | const db::ServerSelector & | server_selector,
|  | const SubnetID & | subnet_id ) const
| pure virtual

Retrieves a single subnet by subnet identifier.

Allowed server selectors: ANY, UNASSIGNED, ALL, ONE. Not allowed server selector: MULTIPLE.

Parameters

  server_selector | Server selector.
  subnet_id | Identifier of a subnet to be retrieved.

Returns
  Pointer to the retrieved subnet or NULL if not found.

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

- config_backend_dhcp6.h