OpenSDN source code
|
#include <dns_config.h>
Classes | |
struct | Observers |
Public Types | |
enum | EventType { CFG_NONE, CFG_ADD, CFG_CHANGE, CFG_DELETE } |
typedef boost::function< void(IFMapNodeProxy *, const std::string &, EventType)> | Observer |
Public Member Functions | |
DnsConfigManager () | |
virtual | ~DnsConfigManager () |
void | Initialize (DB *db, DBGraph *db_graph) |
void | RegisterObservers (const Observers &obs) |
DB * | database () |
DBGraph * | graph () |
void | OnChange () |
const std::string & | localname () const |
const std::string & | ToEventString (EventType ev) |
void | Terminate () |
IFMapNode * | FindTarget (IFMapNode *node, std::string link_name) |
IFMapNode * | FindTarget (IFMapNode *node, std::string link_name, std::string node_type) |
Static Public Attributes | |
static const int | kConfigTaskInstanceId = 0 |
static const std::string | EventString [] |
static const char * | config_types [] |
static uint32_t | config_types_size = sizeof(DnsConfigManager::config_types) |
Private Types | |
typedef std::vector< ConfigDelta > | ChangeList |
typedef std::map< std::string, boost::function< void(const ConfigDelta &)> > | IdentifierMap |
Private Member Functions | |
void | IdentifierMapInit () |
void | ProcessChanges (const ChangeList &change_list) |
void | ProcessNetworkIpam (const ConfigDelta &delta) |
void | ProcessVNNI (const ConfigDelta &delta) |
void | ProcessVirtualDNS (const ConfigDelta &delta) |
void | ProcessVirtualDNSRecord (const ConfigDelta &delta) |
void | ProcessGlobalQosConfig (const ConfigDelta &delta) |
void | ProcessNode (const ConfigDelta &delta, DnsConfigData &config_data, Observer observer) |
bool | ConfigHandler () |
DISALLOW_COPY_AND_ASSIGN (DnsConfigManager) | |
Private Attributes | |
DB * | db_ |
DBGraph * | db_graph_ |
std::string | localname_ |
IdentifierMap | id_map_ |
DnsConfigData | ipam_config_ |
DnsConfigData | vnni_config_ |
DnsConfigData | virt_dns_config_ |
DnsConfigData | virt_dns_rec_config_ |
DnsConfigData | global_qos_config_ |
Observers | obs_ |
TaskTrigger | trigger_ |
boost::scoped_ptr< ConfigListener > | listener_ |
Static Private Attributes | |
static int | config_task_id_ = -1 |
Definition at line 73 of file dns_config.h.
|
private |
Definition at line 114 of file dns_config.h.
|
private |
Definition at line 116 of file dns_config.h.
typedef boost::function<void(IFMapNodeProxy *, const std::string&, EventType)> DnsConfigManager::Observer |
Definition at line 86 of file dns_config.h.
Enumerator | |
---|---|
CFG_NONE | |
CFG_ADD | |
CFG_CHANGE | |
CFG_DELETE |
Definition at line 76 of file dns_config.h.
DnsConfigManager::DnsConfigManager | ( | ) |
|
virtual |
Definition at line 62 of file dns_config.cc.
|
private |
|
inline |
Definition at line 100 of file dns_config.h.
|
private |
|
inline |
Definition at line 101 of file dns_config.h.
|
private |
Definition at line 65 of file dns_config.cc.
|
inline |
Definition at line 105 of file dns_config.h.
void DnsConfigManager::OnChange | ( | ) |
|
private |
Definition at line 194 of file dns_config.cc.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
inline |
Definition at line 98 of file dns_config.h.
void DnsConfigManager::Terminate | ( | ) |
Definition at line 211 of file dns_config.cc.
|
inline |
Definition at line 107 of file dns_config.h.
|
staticprivate |
Definition at line 129 of file dns_config.h.
|
static |
Definition at line 83 of file dns_config.h.
|
static |
Definition at line 84 of file dns_config.h.
|
private |
Definition at line 131 of file dns_config.h.
|
private |
Definition at line 132 of file dns_config.h.
|
static |
Definition at line 82 of file dns_config.h.
|
private |
Definition at line 139 of file dns_config.h.
|
private |
Definition at line 134 of file dns_config.h.
|
private |
Definition at line 135 of file dns_config.h.
|
static |
Definition at line 75 of file dns_config.h.
|
private |
Definition at line 142 of file dns_config.h.
|
private |
Definition at line 133 of file dns_config.h.
|
private |
Definition at line 140 of file dns_config.h.
|
private |
Definition at line 141 of file dns_config.h.
|
private |
Definition at line 137 of file dns_config.h.
|
private |
Definition at line 138 of file dns_config.h.
|
private |
Definition at line 136 of file dns_config.h.