12 #include <boost/function.hpp>
13 #include <boost/shared_ptr.hpp>
14 #include <boost/scoped_ptr.hpp>
19 #include "vnc_cfg_types.h"
20 #include "cmn/dns_types.h"
59 typedef boost::function<void(
const DnsConfig *,
74 typedef std::map<std::string, VnniConfig *>
DataMap;
75 typedef std::pair<std::string, VnniConfig *>
DataPair;
102 typedef std::map<std::string, IpamConfig *>
DataMap;
103 typedef std::pair<std::string, IpamConfig *>
DataPair;
125 return rec_.ipam_dns_server.virtual_dns_server_name;
130 void Trace(
const std::string &ev);
138 typedef std::set<VirtualDnsRecordConfig *>
VDnsRec;
139 typedef std::map<std::string, VirtualDnsConfig *>
DataMap;
140 typedef std::pair<std::string, VirtualDnsConfig *>
DataPair;
168 void Trace(
const std::string &ev);
178 return rec_.reverse_resolution !=
old_rec_.reverse_resolution;
189 typedef std::map<std::string, VirtualDnsRecordConfig *>
DataMap;
190 typedef std::pair<std::string, VirtualDnsRecordConfig *>
DataPair;
205 const std::string &vdns_name,
const DnsItem &item);
216 autogen::VirtualDnsType
GetVDns()
const;
223 void Trace(
const std::string &ev);
boost::asio::ip::address IpAddress
std::vector< Subnet > Subnets
boost::function< void(const DnsConfig *, DnsConfig::DnsConfigEvent)> Callback
bool IsErrorLogged() const
const std::string & GetName() const
void ClearNotified() const
DnsConfig(const std::string &name)
static const std::string EventString[]
static ZoneCallback VdnsZoneCallback
void MarkNotified() const
static const std::string & ToEventString(DnsConfigEvent ev)
boost::function< void(const Subnet &, const VirtualDnsConfig *, DnsConfig::DnsConfigEvent)> ZoneCallback
static Callback VdnsCallback
static Callback VdnsRecordCallback
void OnAdd(IFMapNode *node)
static GlobalQosConfig * singleton_
static GlobalQosConfig * Find(const std::string &name)
void OnChange(IFMapNode *node)
GlobalQosConfig(IFMapNode *node)
void OnChange(IFMapNode *node)
bool GetObject(IFMapNode *node, autogen::IpamType &data)
static void AssociateIpamVdns(VirtualDnsConfig *vdns)
void OnAdd(IFMapNode *node)
std::map< std::string, IpamConfig * > DataMap
VirtualDnsConfig * GetVirtualDns()
static IpamConfig * Find(std::string name)
void Trace(const std::string &ev)
std::string & GetVirtualDnsName()
void DelVnni(VnniConfig *vnni)
void Add(VirtualDnsConfig *vdns)
std::pair< std::string, IpamConfig * > DataPair
static DataMap ipam_config_
IpamConfig(IFMapNode *node)
VirtualDnsConfig * virtual_dns_
const VnniList & GetVnniList() const
std::set< VnniConfig * > VnniList
void AddVnni(VnniConfig *vnni)
void Notify(DnsConfig::DnsConfigEvent ev)
void NotifyPendingDnsRecords()
static DataMap & GetVirtualDnsMap()
std::string GetNextDns() const
void AddRecord(VirtualDnsRecordConfig *record)
static VirtualDnsConfig * Find(std::string name)
std::string GetOldDomainName() const
void OnAdd(IFMapNode *node)
std::string GetRecordOrder() const
void VirtualDnsTrace(VirtualDnsTraceData &rec)
autogen::VirtualDnsType rec_
void Trace(const std::string &ev)
void AddIpam(IpamConfig *ipam)
bool GetObject(IFMapNode *node, autogen::VirtualDnsType &data)
autogen::VirtualDnsType GetVDns() const
static DataMap virt_dns_config_
int GetNegativeCacheTtl() const
bool GetSubnet(const IpAddress &addr, Subnet &subnet) const
autogen::VirtualDnsType old_rec_
bool IsExternalVisible() const
VirtualDnsConfig(IFMapNode *node)
std::set< VirtualDnsRecordConfig * > VDnsRec
std::map< std::string, VirtualDnsConfig * > DataMap
bool DynamicUpdatesEnabled() const
void DelRecord(VirtualDnsRecordConfig *record)
void DelIpam(IpamConfig *ipam)
bool HasReverseResolutionChanged() const
void OnChange(IFMapNode *node)
VDnsRec virtual_dns_records_
bool IsReverseResolutionEnabled() const
std::string GetDomainName() const
std::string GetViewName() const
const IpamList & GetIpamList() const
std::pair< std::string, VirtualDnsConfig * > DataPair
std::set< IpamConfig * > IpamList
void OnChange(IFMapNode *node)
~VirtualDnsRecordConfig()
std::string virtual_dns_name_
std::string GetViewName() const
bool OnlyTtlChange(DnsItem &rhs)
void Trace(const std::string &ev)
static DataMap virt_dns_rec_config_
const DnsItem & GetRecord() const
autogen::VirtualDnsType GetVDns() const
VirtualDnsConfig * GetVirtualDns() const
void VirtualDnsRecordTrace(VirtualDnsRecordTraceData &rec)
static VirtualDnsRecordConfig * Find(std::string name)
std::map< std::string, VirtualDnsRecordConfig * > DataMap
void OnAdd(IFMapNode *node=NULL)
static void UpdateVirtualDns(VirtualDnsConfig *vdns)
VirtualDnsConfig * virt_dns_
bool HasChanged(DnsItem &rhs)
bool UpdateVdns(IFMapNode *node)
VirtualDnsRecordConfig(IFMapNode *node)
std::pair< std::string, VirtualDnsRecordConfig * > DataPair
bool GetObject(IFMapNode *node, DnsItem &item)
bool NotifySubnets(Subnets &old_nets, Subnets &new_nets, VirtualDnsConfig *vdns)
std::pair< std::string, VnniConfig * > DataPair
static VnniConfig * Find(std::string name)
void FindSubnets(IFMapNode *node, Subnets &subnets)
void OnAdd(IFMapNode *node)
void UpdateIpam(IFMapNode *node)
VnniConfig(IFMapNode *node)
void OnChange(IFMapNode *node)
bool operator<(VnniConfig &rhs) const
static DataMap vnni_config_
std::map< std::string, VnniConfig * > DataMap