OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
DomainConfig Class Reference

#include <vn.h>

Public Types

typedef std::map< std::string,
autogen::IpamType > 
IpamDomainConfigMap
 
typedef std::pair< std::string,
autogen::IpamType > 
IpamDomainConfigPair
 
typedef std::map< std::string,
autogen::VirtualDnsType > 
VdnsDomainConfigMap
 
typedef std::pair< std::string,
autogen::VirtualDnsType > 
VdnsDomainConfigPair
 
typedef boost::function< void(IFMapNode *)> Callback
 

Public Member Functions

 DomainConfig (Agent *)
 
virtual ~DomainConfig ()
 
void Init ()
 
void Terminate ()
 
void RegisterIpamCb (Callback cb)
 
void RegisterVdnsCb (Callback cb)
 
void IpamDelete (IFMapNode *node)
 
void IpamAddChange (IFMapNode *node)
 
void VDnsDelete (IFMapNode *node)
 
void VDnsAddChange (IFMapNode *node)
 
bool GetIpam (const std::string &name, autogen::IpamType *ipam)
 
bool GetVDns (const std::string &vdns, autogen::VirtualDnsType *vdns_type)
 

Private Member Functions

void CallVdnsCb (IFMapNode *node)
 
void CallIpamCb (IFMapNode *node)
 
bool IpamChanged (const autogen::IpamType &old, const autogen::IpamType &cur) const
 
 DISALLOW_COPY_AND_ASSIGN (DomainConfig)
 

Private Attributes

IpamDomainConfigMap ipam_config_
 
VdnsDomainConfigMap vdns_config_
 
std::vector< Callbackipam_callback_
 
std::vector< Callbackvdns_callback_
 

Detailed Description

Definition at line 420 of file vn.h.

Member Typedef Documentation

typedef boost::function<void(IFMapNode *)> DomainConfig::Callback

Definition at line 426 of file vn.h.

typedef std::map<std::string, autogen::IpamType> DomainConfig::IpamDomainConfigMap

Definition at line 422 of file vn.h.

typedef std::pair<std::string, autogen::IpamType> DomainConfig::IpamDomainConfigPair

Definition at line 423 of file vn.h.

typedef std::map<std::string, autogen::VirtualDnsType> DomainConfig::VdnsDomainConfigMap

Definition at line 424 of file vn.h.

typedef std::pair<std::string, autogen::VirtualDnsType> DomainConfig::VdnsDomainConfigPair

Definition at line 425 of file vn.h.

Constructor & Destructor Documentation

DomainConfig::DomainConfig ( Agent agent)

Definition at line 1412 of file vn.cc.

DomainConfig::~DomainConfig ( )
virtual

Definition at line 1415 of file vn.cc.

Member Function Documentation

void DomainConfig::CallIpamCb ( IFMapNode node)
private

Definition at line 1482 of file vn.cc.

void DomainConfig::CallVdnsCb ( IFMapNode node)
private

Definition at line 1488 of file vn.cc.

DomainConfig::DISALLOW_COPY_AND_ASSIGN ( DomainConfig  )
private
bool DomainConfig::GetIpam ( const std::string &  name,
autogen::IpamType *  ipam 
)

Definition at line 1542 of file vn.cc.

bool DomainConfig::GetVDns ( const std::string &  vdns,
autogen::VirtualDnsType *  vdns_type 
)

Definition at line 1550 of file vn.cc.

void DomainConfig::Init ( )

Definition at line 1418 of file vn.cc.

void DomainConfig::IpamAddChange ( IFMapNode node)

Definition at line 1440 of file vn.cc.

Here is the call graph for this function:

bool DomainConfig::IpamChanged ( const autogen::IpamType &  old,
const autogen::IpamType &  cur 
) const
private

Definition at line 1494 of file vn.cc.

void DomainConfig::IpamDelete ( IFMapNode node)

Definition at line 1434 of file vn.cc.

Here is the call graph for this function:

void DomainConfig::RegisterIpamCb ( Callback  cb)

Definition at line 1424 of file vn.cc.

void DomainConfig::RegisterVdnsCb ( Callback  cb)

Definition at line 1428 of file vn.cc.

void DomainConfig::Terminate ( )

Definition at line 1421 of file vn.cc.

void DomainConfig::VDnsAddChange ( IFMapNode node)

Definition at line 1467 of file vn.cc.

Here is the call graph for this function:

void DomainConfig::VDnsDelete ( IFMapNode node)

Definition at line 1461 of file vn.cc.

Here is the call graph for this function:

Member Data Documentation

std::vector<Callback> DomainConfig::ipam_callback_
private

Definition at line 449 of file vn.h.

IpamDomainConfigMap DomainConfig::ipam_config_
private

Definition at line 447 of file vn.h.

std::vector<Callback> DomainConfig::vdns_callback_
private

Definition at line 450 of file vn.h.

VdnsDomainConfigMap DomainConfig::vdns_config_
private

Definition at line 448 of file vn.h.


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