Kea  1.9.9-git
isc::d2::DdnsDomain Class Reference

Represents a DNS domain that is may be updated dynamically. More...

#include <d2_config.h>

+ Inheritance diagram for isc::d2::DdnsDomain:

Public Member Functions

 DdnsDomain (const std::string &name, DnsServerInfoStoragePtr servers, const TSIGKeyInfoPtr &tsig_key_info=TSIGKeyInfoPtr())
 Constructor. More...
 
virtual ~DdnsDomain ()
 Destructor. More...
 
const std::string getKeyName () const
 Convenience method which returns the domain's TSIG key name. More...
 
const std::string getName () const
 Getter which returns the domain's name. More...
 
const DnsServerInfoStoragePtrgetServers ()
 Getter which returns the domain's list of servers. More...
 
const TSIGKeyInfoPtrgetTSIGKeyInfo ()
 Getter which returns the domain's TSIGKey info. More...
 
virtual isc::data::ElementPtr toElement () const
 Unparse a configuration object. More...
 
- Public Member Functions inherited from isc::data::UserContext
void contextToElement (data::ElementPtr map) const
 Merge unparse a user_context object. More...
 
data::ConstElementPtr getContext () const
 Returns const pointer to the user context. More...
 
void setContext (const data::ConstElementPtr &ctx)
 Sets user context. More...
 
- Public Member Functions inherited from isc::data::CfgToElement
virtual ~CfgToElement ()
 Destructor. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from isc::data::UserContext
static data::ElementPtr toElement (data::ConstElementPtr map)
 Copy an Element map. More...
 
- Protected Attributes inherited from isc::data::UserContext
data::ConstElementPtr user_context_
 Pointer to the user context (may be NULL) More...
 

Detailed Description

Represents a DNS domain that is may be updated dynamically.

This class specifies a DNS domain and the list of DNS servers that support it. It's primary use is to map a domain to the DNS server(s) responsible for it.

Todo:
Currently the name entry for a domain is just an std::string. It may be worthwhile to change this to a dns::Name for purposes of better validation and matching capabilities.

Definition at line 530 of file d2_config.h.

Constructor & Destructor Documentation

isc::d2::DdnsDomain::DdnsDomain ( const std::string &  name,
DnsServerInfoStoragePtr  servers,
const TSIGKeyInfoPtr tsig_key_info = TSIGKeyInfoPtr() 
)

Constructor.

Parameters
nameis the domain name of the domain.
serversis the list of server(s) supporting this domain.
tsig_key_infopointer to the TSIGKeyInfo for the domain's key It defaults to an empty pointer, signifying the domain has no key.

Definition at line 244 of file d2_config.cc.

isc::d2::DdnsDomain::~DdnsDomain ( )
virtual

Destructor.

Definition at line 251 of file d2_config.cc.

Member Function Documentation

const std::string isc::d2::DdnsDomain::getKeyName ( ) const

Convenience method which returns the domain's TSIG key name.

Returns
returns the key name in an std::string. If domain has no TSIG key, the string will empty.

Definition at line 255 of file d2_config.cc.

const std::string isc::d2::DdnsDomain::getName ( ) const
inline

Getter which returns the domain's name.

Returns
returns the name in an std::string.

Definition at line 548 of file d2_config.h.

const DnsServerInfoStoragePtr& isc::d2::DdnsDomain::getServers ( )
inline

Getter which returns the domain's list of servers.

Returns
returns the pointer to the server storage.

Definition at line 561 of file d2_config.h.

const TSIGKeyInfoPtr& isc::d2::DdnsDomain::getTSIGKeyInfo ( )
inline

Getter which returns the domain's TSIGKey info.

Returns
returns the pointer to the server storage. If the domain is not configured to use TSIG the pointer will be empty.

Definition at line 569 of file d2_config.h.

ElementPtr isc::d2::DdnsDomain::toElement ( ) const
virtual

Unparse a configuration object.

Returns
a pointer to a configuration

Implements isc::data::CfgToElement.

Definition at line 264 of file d2_config.cc.

References isc::data::UserContext::contextToElement().

+ Here is the call graph for this function:


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