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

#include <dns_oper.h>

Inheritance diagram for VirtualDnsRecordConfig:
Collaboration diagram for VirtualDnsRecordConfig:

Public Types

enum  Source { Config, Agent }
 
typedef std::map< std::string,
VirtualDnsRecordConfig * > 
DataMap
 
typedef std::pair< std::string,
VirtualDnsRecordConfig * > 
DataPair
 
- Public Types inherited from DnsConfig
enum  DnsConfigEvent { CFG_ADD, CFG_CHANGE, CFG_DELETE }
 
enum  DnsConfigFlags { DnsConfigValid = 1 << 0, DnsConfigNotified = 1 << 1, DnsConfigDeleteMarked = 1 << 2, DnsConfigErrorLogged = 1 << 3 }
 
typedef boost::function< void(const
DnsConfig
*, DnsConfig::DnsConfigEvent)> 
Callback
 
typedef boost::function< void(const
Subnet &, const
VirtualDnsConfig
*, DnsConfig::DnsConfigEvent)> 
ZoneCallback
 

Public Member Functions

 VirtualDnsRecordConfig (IFMapNode *node)
 
 VirtualDnsRecordConfig (const std::string &name, const std::string &vdns_name, const DnsItem &item)
 
 ~VirtualDnsRecordConfig ()
 
void OnAdd (IFMapNode *node=NULL)
 
void OnDelete ()
 
void OnChange (IFMapNode *node)
 
void OnChange (const DnsItem &new_rec)
 
bool UpdateVdns (IFMapNode *node)
 
bool CanNotify ()
 
bool HasChanged (DnsItem &rhs)
 
bool OnlyTtlChange (DnsItem &rhs)
 
autogen::VirtualDnsType GetVDns () const
 
const DnsItemGetRecord () const
 
std::string GetViewName () const
 
VirtualDnsConfigGetVirtualDns () const
 
bool GetObject (IFMapNode *node, DnsItem &item)
 
void VirtualDnsRecordTrace (VirtualDnsRecordTraceData &rec)
 
void Trace (const std::string &ev)
 
- Public Member Functions inherited from DnsConfig
void MarkValid ()
 
bool IsValid () const
 
void ClearValid ()
 
void MarkNotified () const
 
bool IsNotified () const
 
void ClearNotified () const
 
void MarkDelete ()
 
bool IsDeleted () const
 
void ClearDelete ()
 
void MarkErrorLogged ()
 
bool IsErrorLogged () const
 
 DnsConfig (const std::string &name)
 
const std::string & GetName () const
 

Static Public Member Functions

static VirtualDnsRecordConfigFind (std::string name)
 
static void UpdateVirtualDns (VirtualDnsConfig *vdns)
 
- Static Public Member Functions inherited from DnsConfig
static const std::string & ToEventString (DnsConfigEvent ev)
 

Public Attributes

DnsItem rec_
 
VirtualDnsConfigvirt_dns_
 
std::string virtual_dns_name_
 
Source src_
 
- Public Attributes inherited from DnsConfig
std::string name_
 
uint8_t flags_
 

Static Public Attributes

static DataMap virt_dns_rec_config_
 
- Static Public Attributes inherited from DnsConfig
static Callback VdnsCallback
 
static Callback VdnsRecordCallback
 
static ZoneCallback VdnsZoneCallback
 
static const std::string EventString []
 

Detailed Description

Definition at line 188 of file dns_oper.h.

Member Typedef Documentation

typedef std::map<std::string, VirtualDnsRecordConfig *> VirtualDnsRecordConfig::DataMap

Definition at line 189 of file dns_oper.h.

typedef std::pair<std::string, VirtualDnsRecordConfig *> VirtualDnsRecordConfig::DataPair

Definition at line 190 of file dns_oper.h.

Member Enumeration Documentation

Enumerator
Config 
Agent 

Definition at line 192 of file dns_oper.h.

Constructor & Destructor Documentation

VirtualDnsRecordConfig::VirtualDnsRecordConfig ( IFMapNode node)

Definition at line 481 of file dns_oper.cc.

Here is the call graph for this function:

VirtualDnsRecordConfig::VirtualDnsRecordConfig ( const std::string &  name,
const std::string &  vdns_name,
const DnsItem item 
)

Definition at line 488 of file dns_oper.cc.

Here is the call graph for this function:

VirtualDnsRecordConfig::~VirtualDnsRecordConfig ( )

Definition at line 502 of file dns_oper.cc.

Member Function Documentation

bool VirtualDnsRecordConfig::CanNotify ( )

Definition at line 585 of file dns_oper.cc.

Here is the call graph for this function:

VirtualDnsRecordConfig * VirtualDnsRecordConfig::Find ( std::string  name)
static

Definition at line 694 of file dns_oper.cc.

bool VirtualDnsRecordConfig::GetObject ( IFMapNode node,
DnsItem item 
)

Definition at line 645 of file dns_oper.cc.

Here is the call graph for this function:

const DnsItem& VirtualDnsRecordConfig::GetRecord ( ) const
inline

Definition at line 217 of file dns_oper.h.

autogen::VirtualDnsType VirtualDnsRecordConfig::GetVDns ( ) const

Definition at line 628 of file dns_oper.cc.

Here is the call graph for this function:

std::string VirtualDnsRecordConfig::GetViewName ( ) const

Definition at line 638 of file dns_oper.cc.

Here is the call graph for this function:

VirtualDnsConfig* VirtualDnsRecordConfig::GetVirtualDns ( ) const
inline

Definition at line 219 of file dns_oper.h.

bool VirtualDnsRecordConfig::HasChanged ( DnsItem rhs)

Definition at line 612 of file dns_oper.cc.

void VirtualDnsRecordConfig::OnAdd ( IFMapNode node = NULL)

Definition at line 506 of file dns_oper.cc.

Here is the call graph for this function:

void VirtualDnsRecordConfig::OnChange ( IFMapNode node)

Definition at line 534 of file dns_oper.cc.

Here is the call graph for this function:

void VirtualDnsRecordConfig::OnChange ( const DnsItem new_rec)

Definition at line 556 of file dns_oper.cc.

Here is the call graph for this function:

void VirtualDnsRecordConfig::OnDelete ( )

Definition at line 523 of file dns_oper.cc.

Here is the call graph for this function:

bool VirtualDnsRecordConfig::OnlyTtlChange ( DnsItem rhs)

Definition at line 620 of file dns_oper.cc.

void VirtualDnsRecordConfig::Trace ( const std::string &  ev)

Definition at line 685 of file dns_oper.cc.

Here is the call graph for this function:

bool VirtualDnsRecordConfig::UpdateVdns ( IFMapNode node)

Definition at line 564 of file dns_oper.cc.

Here is the call graph for this function:

void VirtualDnsRecordConfig::UpdateVirtualDns ( VirtualDnsConfig vdns)
static

Definition at line 705 of file dns_oper.cc.

Here is the call graph for this function:

void VirtualDnsRecordConfig::VirtualDnsRecordTrace ( VirtualDnsRecordTraceData &  rec)

Definition at line 665 of file dns_oper.cc.

Here is the call graph for this function:

Member Data Documentation

DnsItem VirtualDnsRecordConfig::rec_

Definition at line 197 of file dns_oper.h.

Source VirtualDnsRecordConfig::src_

Definition at line 200 of file dns_oper.h.

VirtualDnsConfig* VirtualDnsRecordConfig::virt_dns_

Definition at line 198 of file dns_oper.h.

VirtualDnsRecordConfig::DataMap VirtualDnsRecordConfig::virt_dns_rec_config_
static

Definition at line 201 of file dns_oper.h.

std::string VirtualDnsRecordConfig::virtual_dns_name_

Definition at line 199 of file dns_oper.h.


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