|
OpenSDN source code
|
#include <ksync_object.h>


Public Types | |
| enum | DBFilterResp { DBFilterAccept , DBFilterIgnore , DBFilterDelete , DBFilterDelAdd , DBFilterMax } |
Public Types inherited from KSyncObject | |
| typedef boost::intrusive::member_hook< KSyncEntry, boost::intrusive::set_member_hook<>, &KSyncEntry::node_ > | KSyncObjectNode |
| typedef boost::intrusive::set< KSyncEntry, KSyncObjectNode > | Tree |
| typedef boost::intrusive::member_hook< KSyncFwdReference, boost::intrusive::set_member_hook<>, &KSyncFwdReference::node_ > | KSyncFwdRefNode |
| typedef boost::intrusive::set< KSyncFwdReference, KSyncFwdRefNode > | FwdRefTree |
| typedef boost::intrusive::member_hook< KSyncBackReference, boost::intrusive::set_member_hook<>, &KSyncBackReference::node_ > | KSyncBackRefNode |
| typedef boost::intrusive::set< KSyncBackReference, KSyncBackRefNode > | BackRefTree |
Public Member Functions | |
| KSyncDBObject (const std::string &name) | |
| KSyncDBObject (const std::string &name, int max_index) | |
| KSyncDBObject (const std::string &name, DBTableBase *table) | |
| KSyncDBObject (const std::string &name, DBTableBase *table, int max_index) | |
| virtual | ~KSyncDBObject () |
| void | RegisterDb (DBTableBase *table) |
| void | UnregisterDb (DBTableBase *table) |
| void | Notify (DBTablePartBase *partition, DBEntryBase *entry) |
| DBTableBase * | GetDBTable () |
| DBTableBase::ListenerId | GetListenerId (DBTableBase *table) |
| virtual DBFilterResp | DBEntryFilter (const DBEntry *entry, const KSyncDBEntry *ksync) |
| virtual KSyncEntry * | DBToKSyncEntry (const DBEntry *entry)=0 |
| void | set_test_id (DBTableBase::ListenerId id) |
| DBTableBase::ListenerId | id () const |
Public Member Functions inherited from KSyncObject | |
| KSyncObject (const std::string &name) | |
| KSyncObject (const std::string &name, int max_index) | |
| virtual | ~KSyncObject () |
| void | InitStaleEntryCleanup (boost::asio::io_context &ios, uint32_t cleanup_time, uint32_t cleanup_intvl, uint16_t entries_per_intvl) |
| void | NotifyEvent (KSyncEntry *entry, KSyncEntry::KSyncEvent event) |
| void | SafeNotifyEvent (KSyncEntry *entry, KSyncEntry::KSyncEvent event) |
| virtual void | NetlinkAck (KSyncEntry *entry, KSyncEntry::KSyncEvent event) |
| void | BackRefAdd (KSyncEntry *key, KSyncEntry *reference) |
| void | BackRefDel (KSyncEntry *key) |
| void | BackRefReEval (KSyncEntry *key) |
| KSyncEntry * | Create (const KSyncEntry *key) |
| KSyncEntry * | Create (const KSyncEntry *key, bool skip_lookup) |
| KSyncEntry * | CreateStale (const KSyncEntry *key) |
| void | Change (KSyncEntry *entry) |
| void | Delete (KSyncEntry *entry) |
| KSyncEntry * | Find (const KSyncEntry *key) |
| KSyncEntry * | Next (const KSyncEntry *entry) const |
| KSyncEntry * | GetReference (const KSyncEntry *key) |
| virtual KSyncEntry * | Alloc (const KSyncEntry *key, uint32_t index)=0 |
| virtual void | Free (KSyncEntry *entry) |
| virtual void | EmptyTable (void) |
| bool | IsEmpty (void) |
| virtual bool | DoEventTrace (void) |
| virtual void | PreFree (KSyncEntry *entry) |
| std::size_t | Size () |
| void | set_delete_scheduled () |
| bool | delete_scheduled () |
| virtual SandeshTraceBufferPtr | GetKSyncTraceBuf () |
Private Member Functions | |
| virtual void | CleanupOnDel (KSyncEntry *kentry) |
| DISALLOW_COPY_AND_ASSIGN (KSyncDBObject) | |
Private Attributes | |
| DBTableBase * | table_ |
| DBTableBase::ListenerId | id_ |
| DBTableBase::ListenerId | test_id_ |
| KSyncIndexTable | index_table_ |
Additional Inherited Members | |
Static Public Member Functions inherited from KSyncObject | |
| static void | Shutdown () |
Protected Member Functions inherited from KSyncObject | |
| KSyncEntry * | CreateImpl (const KSyncEntry *key) |
| void | ClearStale (KSyncEntry *entry) |
| void | ChangeKey (KSyncEntry *entry, uint32_t arg) |
| virtual void | UpdateKey (KSyncEntry *entry, uint32_t arg) |
| virtual uint32_t | GetKey (KSyncEntry *entry) |
Protected Attributes inherited from KSyncObject | |
| tbb::recursive_mutex | lock_ |
Definition at line 208 of file ksync_object.h.
| Enumerator | |
|---|---|
| DBFilterAccept | |
| DBFilterIgnore | |
| DBFilterDelete | |
| DBFilterDelAdd | |
| DBFilterMax | |
Definition at line 215 of file ksync_object.h.
| KSyncDBObject::KSyncDBObject | ( | const std::string & | name | ) |
Definition at line 281 of file ksync_object.cc.
| KSyncDBObject::KSyncDBObject | ( | const std::string & | name, |
| int | max_index | ||
| ) |
Definition at line 285 of file ksync_object.cc.
| KSyncDBObject::KSyncDBObject | ( | const std::string & | name, |
| DBTableBase * | table | ||
| ) |
| KSyncDBObject::KSyncDBObject | ( | const std::string & | name, |
| DBTableBase * | table, | ||
| int | max_index | ||
| ) |
|
virtual |
|
privatevirtual |
Reimplemented from KSyncObject.
Definition at line 340 of file ksync_object.cc.

|
virtual |
Reimplemented in RouteKSyncObject, ForwardingClassKSyncObject, OVSDB::OvsdbDBObject, and InterfaceKSyncObject.
Definition at line 322 of file ksync_object.cc.
|
pure virtual |
Implemented in VrfKSyncObject, KSyncVxlanRouteObject, KSyncVxlanPortObject, KSyncVxlanBridgeObject, KSyncLinuxPortObject, KSyncLinuxFdbObject, KSyncLinuxBridgeObject, VxLanKSyncObject, VrfAssignKSyncObject, RouteKSyncObject, QosQueueKSyncObject, QosConfigKSyncObject, NHKSyncObject, MplsKSyncObject, MirrorKSyncObject, InterfaceKSyncObject, ForwardingClassKSyncObject, OVSDB::VrfOvsdbObject, OVSDB::VnOvsdbObject, OVSDB::VMInterfaceKSyncObject, OVSDB::VlanPortBindingTable, OVSDB::UnicastMacRemoteTable, OVSDB::LogicalSwitchTable, OVSDB::HaStaleVnTable, OVSDB::HaStaleL2RouteTable, and OVSDB::HaStaleDevVnTable.
|
private |
|
inline |
Definition at line 244 of file ksync_object.h.
| DBTableBase::ListenerId KSyncDBObject::GetListenerId | ( | DBTableBase * | table | ) |
Definition at line 332 of file ksync_object.cc.
|
inline |
Definition at line 256 of file ksync_object.h.
| void KSyncDBObject::Notify | ( | DBTablePartBase * | partition, |
| DBEntryBase * | entry | ||
| ) |
| void KSyncDBObject::RegisterDb | ( | DBTableBase * | table | ) |
| void KSyncDBObject::set_test_id | ( | DBTableBase::ListenerId | id | ) |
| void KSyncDBObject::UnregisterDb | ( | DBTableBase * | table | ) |
|
private |
Definition at line 263 of file ksync_object.h.
|
private |
Definition at line 266 of file ksync_object.h.
|
private |
Definition at line 262 of file ksync_object.h.
|
private |
Definition at line 264 of file ksync_object.h.