5 #ifndef _dns_agent_xmpp_channel_h_
6 #define _dns_agent_xmpp_channel_h_
13 #include <boost/function.hpp>
14 #include <boost/bind/bind.hpp>
19 using namespace boost::placeholders;
29 typedef std::set<DnsUpdateData *, DnsUpdateData::Compare>
DataSet;
36 void GetAgentDnsData(AgentDnsData &data);
40 std::string GetDnsRecordName(std::string &vdns_name,
const DnsItem &item);
41 void HandleAgentUpdate(std::unique_ptr<DnsUpdateData> rcv_data);
57 const std::string &vdns,
const DnsItem &it)
58 : op(o), record_name(rec), vdns_name(vdns), item(it) {}
62 typedef std::map<const XmppChannel *, DnsAgentXmppChannel *>
ChannelMap;
69 bool ProcessRecord(boost::shared_ptr<RecordRequest> req);
70 void EnqueueRecord(boost::shared_ptr<RecordRequest> req);
72 void GetAgentData(std::vector<AgentData> &list);
73 void GetAgentDnsData(std::vector<AgentDnsData> &dt);
RecordRequestWorkQueue work_queue_
DnsAgentXmppChannel * FindChannel(const XmppChannel *ch)
std::map< const XmppChannel *, DnsAgentXmppChannel * > ChannelMap
WorkQueue< boost::shared_ptr< RecordRequest > > RecordRequestWorkQueue
DnsAgentXmppChannelManager * mgr_
std::set< DnsUpdateData *, DnsUpdateData::Compare > DataSet
static uint8_t ChannelToDscp(XmppChannel *xc)
RecordRequest(BindUtil::Operation o, const std::string &rec, const std::string &vdns, const DnsItem &it)