39 s <<
"Qos Config class id " <<
uuid_;
45 QosIdForwardingClassMap *map) {
50 ->ksync()->forwarding_class_ksync_obj();
53 AgentQosConfig::QosIdForwardingClassMap::const_iterator it = map->begin();
54 for (; it != map->end(); it++) {
61 if (ksync_map != new_ksync_map) {
62 ksync_map = new_ksync_map;
95 vr_qos_map_req encoder;
98 encoder.set_qmr_id(
id_);
99 encoder.set_qmr_rid(0);
101 std::vector<int8_t> key;
102 std::vector<int8_t> data;
103 KSyncQosFcMap::const_iterator it =
dscp_map_.begin();
104 for (uint32_t index = 0;
110 key.push_back(index);
111 data.push_back(fc->
id());
113 key.push_back(index);
118 encoder.set_qmr_dscp(key);
119 encoder.set_qmr_dscp_fc_id(data);
121 std::vector<int8_t> vlan_key;
122 std::vector<int8_t> vlan_data;
124 for (uint32_t index = 0;
130 vlan_key.push_back(index);
131 vlan_data.push_back(fc->
id());
133 vlan_key.push_back(index);
137 encoder.set_qmr_dotonep(vlan_key);
138 encoder.set_qmr_dotonep_fc_id(vlan_data);
140 std::vector<int8_t> mpls_key;
141 std::vector<int8_t> mpls_data;
143 for (uint32_t index = 0;
149 mpls_key.push_back(index);
150 mpls_data.push_back(fc->
id());
152 mpls_key.push_back(index);
156 encoder.set_qmr_mpls_qos(mpls_key);
157 encoder.set_qmr_mpls_qos_fc_id(mpls_data);
160 int encode_len = encoder.WriteBinary((uint8_t *)buf, buf_len, &error);
162 assert(encode_len <= buf_len);
167 return Encode(sandesh_op::ADD, buf, buf_len);
171 return Encode(sandesh_op::ADD, buf, buf_len);
175 return Encode(sandesh_op::DEL, buf, buf_len);
189 KSyncQosFcMap::const_iterator it =
dscp_map_.begin();
191 if (it->second.get()->IsResolved() ==
false) {
192 return it->second.get();
198 if (it->second.get()->IsResolved() ==
false) {
199 return it->second.get();
205 if (it->second.get()->IsResolved() ==
false) {
206 return it->second.get();
213 ->ksync()->forwarding_class_ksync_obj();
217 if (ptr && ptr->IsResolved() ==
false) {
226 KSyncDBObject(
"KSync Qos Config class object"), ksync_(ksync) {
const QosIdForwardingClassMap & dscp_map() const
virtual bool Sync(DBEntry *e)
void RegisterDb(DBTableBase *table)
uint32_t default_forwarding_class() const
KSyncQosFcMap vlan_priority_map_
QosConfigKSyncEntry(QosConfigKSyncObject *obj, const QosConfigKSyncEntry *entry)
virtual KSyncEntry * DBToKSyncEntry(const DBEntry *e)
bool CopyQosMap(KSyncQosFcMap &ksync_map, const AgentQosConfig::QosIdForwardingClassMap *map)
uint32_t default_forwarding_class_
const QosIdForwardingClassMap & mpls_exp_map() const
virtual int ChangeMsg(char *buf, int buf_len)
QosConfigKSyncObject(KSync *ksync)
virtual ~QosConfigKSyncObject()
static const uint32_t kDscpEntries
int Encode(sandesh_op::type op, char *buf, int buf_len)
boost::intrusive_ptr< KSyncEntry > KSyncEntryPtr
virtual KSyncEntry * Alloc(const KSyncEntry *entry, uint32_t index)
virtual ~QosConfigKSyncEntry()
KSyncEntry * GetReference(const KSyncEntry *key)
const QosIdForwardingClassMap & vlan_priority_map() const
virtual bool IsLess(const KSyncEntry &rhs) const
virtual void QosConfigMsgHandler(vr_qos_map_req *req)=0
std::pair< uint32_t, KSyncEntryPtr > KSyncQosFcPair
static const uint32_t kExpEntries
KSyncDBObject * GetObject() const
AgentQosConfigTable * qos_config_table() const
KSyncQosFcMap mpls_exp_map_
virtual int AddMsg(char *buf, int buf_len)
virtual int DeleteMsg(char *buf, int buf_len)
static const uint32_t k801pEntries
KSyncDBObject * ksync_obj_
virtual std::string ToString() const
std::map< uint32_t, KSyncEntryPtr > KSyncQosFcMap
virtual KSyncEntry * UnresolvedReference()