OpenSDN source code
KSyncDBEntry Class Referenceabstract

#include <ksync_entry.h>

Inheritance diagram for KSyncDBEntry:
Collaboration diagram for KSyncDBEntry:

Public Types

typedef std::list< DBEntry * > DupEntryList
 
- Public Types inherited from KSyncEntry
enum  KSyncState {
  INIT , TEMP , ADD_DEFER , CHANGE_DEFER ,
  IN_SYNC , SYNC_WAIT , NEED_SYNC , DEL_DEFER_SYNC ,
  DEL_DEFER_REF , DEL_DEFER_DEL_ACK , DEL_ACK_WAIT , RENEW_WAIT ,
  FREE_WAIT
}
 
enum  KSyncEvent {
  ADD_CHANGE_REQ , ADD_ACK , CHANGE_ACK , DEL_REQ ,
  DEL_ADD_REQ , DEL_ACK , RE_EVAL , INT_PTR_REL ,
  INVALID
}
 
typedef boost::intrusive_ptr< KSyncEntryKSyncEntryPtr
 

Public Member Functions

 KSyncDBEntry ()
 
 KSyncDBEntry (uint32_t index)
 
virtual ~KSyncDBEntry ()
 
virtual bool Sync (DBEntry *entry)=0
 
void SetDBEntry (DBEntry *db_entry)
 
DBEntryGetDBEntry ()
 
- Public Member Functions inherited from KSyncEntry
std::string StateString () const
 
std::string AckOperationString (KSyncEvent ack_event) const
 
std::string EventString (KSyncEvent event) const
 
 KSyncEntry ()
 
 KSyncEntry (uint32_t index)
 
virtual ~KSyncEntry ()
 
void Reset ()
 
void Reset (uint32_t index)
 
bool operator< (const KSyncEntry &rhs) const
 
virtual bool IsLess (const KSyncEntry &rhs) const =0
 
virtual std::string ToString () const =0
 
virtual bool Add ()=0
 
virtual bool Change ()=0
 
virtual bool Delete ()=0
 
virtual KSyncObjectGetObject () const =0
 
virtual KSyncEntryUnresolvedReference ()=0
 
virtual bool ShouldReEvalBackReference () const
 
bool IsResolved ()
 
virtual bool IsDataResolved ()
 
virtual void Response ()
 
virtual bool AllowDeleteStateComp ()
 
virtual void ErrorHandler (int err, uint32_t seqno, KSyncEvent event) const
 
virtual std::string VrouterError (uint32_t error) const
 
virtual bool pre_alloc_rx_buffer () const
 
virtual uint32_t GetTableIndex () const
 
virtual void StaleTimerExpired ()
 
size_t GetIndex () const
 
KSyncState GetState () const
 
bool del_add_pending () const
 
uint32_t GetRefCount () const
 
bool Seen () const
 
bool stale () const
 
void SetSeen ()
 
bool IsDeleted ()
 
bool IsActive ()
 
void set_del_add_pending (bool pending)
 
void RecordTransition (KSyncState from, KSyncState to, KSyncEvent event)
 
- Public Member Functions inherited from DBState
virtual ~DBState ()
 

Private Member Functions

 DISALLOW_COPY_AND_ASSIGN (KSyncDBEntry)
 

Private Attributes

DBEntrydb_entry_
 
DupEntryList dup_entry_list_
 

Friends

class KSyncDBObject
 

Additional Inherited Members

- Static Public Member Functions inherited from KSyncEntry
static std::string VrouterErrorToString (uint32_t error)
 
- Static Public Attributes inherited from KSyncEntry
static const size_t kInvalidIndex = 0xFFFFFFFF
 
static const int kDefaultMsgSize = 512
 
- Protected Member Functions inherited from KSyncEntry
void SetIndex (size_t index)
 
void SetState (KSyncState state)
 

Detailed Description

Definition at line 240 of file ksync_entry.h.

Member Typedef Documentation

◆ DupEntryList

typedef std::list<DBEntry *> KSyncDBEntry::DupEntryList

Definition at line 242 of file ksync_entry.h.

Constructor & Destructor Documentation

◆ KSyncDBEntry() [1/2]

KSyncDBEntry::KSyncDBEntry ( )
inline

Definition at line 244 of file ksync_entry.h.

◆ KSyncDBEntry() [2/2]

KSyncDBEntry::KSyncDBEntry ( uint32_t  index)
inline

Definition at line 245 of file ksync_entry.h.

◆ ~KSyncDBEntry()

virtual KSyncDBEntry::~KSyncDBEntry ( )
inlinevirtual

Definition at line 246 of file ksync_entry.h.

Member Function Documentation

◆ DISALLOW_COPY_AND_ASSIGN()

KSyncDBEntry::DISALLOW_COPY_AND_ASSIGN ( KSyncDBEntry  )
private

◆ GetDBEntry()

DBEntry* KSyncDBEntry::GetDBEntry ( )
inline

Definition at line 253 of file ksync_entry.h.

◆ SetDBEntry()

void KSyncDBEntry::SetDBEntry ( DBEntry db_entry)
inline

Definition at line 252 of file ksync_entry.h.

◆ Sync()

Friends And Related Function Documentation

◆ KSyncDBObject

friend class KSyncDBObject
friend

Definition at line 256 of file ksync_entry.h.

Member Data Documentation

◆ db_entry_

DBEntry* KSyncDBEntry::db_entry_
private

Definition at line 258 of file ksync_entry.h.

◆ dup_entry_list_

DupEntryList KSyncDBEntry::dup_entry_list_
private

Definition at line 259 of file ksync_entry.h.


The documentation for this class was generated from the following file: