OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
OVSDB::UnicastMacRemoteEntry Class Reference

#include <unicast_mac_remote_ovsdb.h>

Inheritance diagram for OVSDB::UnicastMacRemoteEntry:
Collaboration diagram for OVSDB::UnicastMacRemoteEntry:

Public Types

enum  Trace { ADD_REQ, DEL_REQ, ADD_ACK, DEL_ACK }
 
typedef std::set< struct
ovsdb_idl_row * > 
OvsdbDupIdlList
 
- Public Types inherited from KSyncDBEntry
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
< KSyncEntry
KSyncEntryPtr
 

Public Member Functions

 UnicastMacRemoteEntry (UnicastMacRemoteTable *table, const std::string mac)
 
 UnicastMacRemoteEntry (UnicastMacRemoteTable *table, const BridgeRouteEntry *entry)
 
 UnicastMacRemoteEntry (UnicastMacRemoteTable *table, const UnicastMacRemoteEntry *key)
 
 UnicastMacRemoteEntry (UnicastMacRemoteTable *table, struct ovsdb_idl_row *entry)
 
virtual ~UnicastMacRemoteEntry ()
 
virtual void NotifyAdd (struct ovsdb_idl_row *)
 
virtual void NotifyDelete (struct ovsdb_idl_row *)
 
void PreAddChange ()
 
void PostDelete ()
 
void AddMsg (struct ovsdb_idl_txn *)
 
void ChangeMsg (struct ovsdb_idl_txn *)
 
void DeleteMsg (struct ovsdb_idl_txn *)
 
void OvsdbChange ()
 
bool Sync (DBEntry *)
 
bool IsLess (const KSyncEntry &) const
 
std::string ToString () const
 
KSyncEntryUnresolvedReference ()
 
const std::string & mac () const
 
const std::string & logical_switch_name () const
 
const std::string & dest_ip () const
 
bool self_exported_route () const
 
uint32_t sequence () const
 
uint32_t self_sequence () const
 
bool ecmp_suppressed () const
 
void Ack (bool success)
 
void TxnDoneNoMessage ()
 
virtual bool UseBulkTxn ()
 
- Public Member Functions inherited from OVSDB::OvsdbDBEntry
 OvsdbDBEntry (OvsdbDBObject *table)
 
 OvsdbDBEntry (OvsdbDBObject *table, struct ovsdb_idl_row *ovs_entry)
 
virtual ~OvsdbDBEntry ()
 
virtual void StaleTimerExpired ()
 
bool AllowDeleteStateComp ()
 
virtual bool Add ()
 
virtual bool Change ()
 
virtual bool Delete ()
 
virtual bool IsDataResolved ()
 
bool IsDelAckWaiting ()
 
bool IsAddChangeAckWaiting ()
 
struct ovsdb_idl_row * ovs_entry ()
 
OvsdbDBObjecttable ()
 
KSyncObjectGetObject () const
 
void TriggerDeleteAdd ()
 
- Public Member Functions inherited from KSyncDBEntry
 KSyncDBEntry ()
 
 KSyncDBEntry (uint32_t index)
 
virtual ~KSyncDBEntry ()
 
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 ShouldReEvalBackReference () const
 
bool IsResolved ()
 
virtual void Response ()
 
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
 
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 ()
 
- Public Member Functions inherited from OVSDB::OvsdbEntryBase
KSyncEntry::KSyncEvent ack_event ()
 

Private Member Functions

void SendTrace (Trace event) const
 
void DeleteDupEntries (struct ovsdb_idl_txn *)
 
void ReleaseLocatorCreateReference ()
 
 DISALLOW_COPY_AND_ASSIGN (UnicastMacRemoteEntry)
 

Private Attributes

KSyncEntryPtr pl_create_ref_
 
std::string mac_
 
std::string logical_switch_name_
 
std::string dest_ip_
 
bool self_exported_route_
 
OvsdbDupIdlList dup_list_
 
uint32_t sequence_
 
uint32_t self_sequence_
 
bool ecmp_suppressed_
 
LogicalSwitchRef logical_switch_
 

Friends

class UnicastMacRemoteTable
 
class VrfOvsdbObject
 

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 OVSDB::OvsdbDBEntry
virtual bool IsNoTxnEntry ()
 
- Protected Member Functions inherited from KSyncEntry
void SetIndex (size_t index)
 
void SetState (KSyncState state)
 
- Protected Attributes inherited from OVSDB::OvsdbDBEntry
OvsdbDBObjecttable_
 
struct ovsdb_idl_row * ovs_entry_
 
- Protected Attributes inherited from OVSDB::OvsdbEntryBase
KSyncEntry::KSyncEvent ack_event_
 

Detailed Description

Definition at line 47 of file unicast_mac_remote_ovsdb.h.

Member Typedef Documentation

typedef std::set<struct ovsdb_idl_row *> OVSDB::UnicastMacRemoteEntry::OvsdbDupIdlList

Definition at line 49 of file unicast_mac_remote_ovsdb.h.

Member Enumeration Documentation

Enumerator
ADD_REQ 
DEL_REQ 
ADD_ACK 
DEL_ACK 

Definition at line 50 of file unicast_mac_remote_ovsdb.h.

Constructor & Destructor Documentation

UnicastMacRemoteEntry::UnicastMacRemoteEntry ( UnicastMacRemoteTable table,
const std::string  mac 
)

Definition at line 28 of file unicast_mac_remote_ovsdb.cc.

UnicastMacRemoteEntry::UnicastMacRemoteEntry ( UnicastMacRemoteTable table,
const BridgeRouteEntry entry 
)

Definition at line 35 of file unicast_mac_remote_ovsdb.cc.

UnicastMacRemoteEntry::UnicastMacRemoteEntry ( UnicastMacRemoteTable table,
const UnicastMacRemoteEntry key 
)

Definition at line 43 of file unicast_mac_remote_ovsdb.cc.

UnicastMacRemoteEntry::UnicastMacRemoteEntry ( UnicastMacRemoteTable table,
struct ovsdb_idl_row *  entry 
)

Definition at line 50 of file unicast_mac_remote_ovsdb.cc.

Here is the call graph for this function:

UnicastMacRemoteEntry::~UnicastMacRemoteEntry ( )
virtual

Definition at line 62 of file unicast_mac_remote_ovsdb.cc.

Member Function Documentation

void UnicastMacRemoteEntry::Ack ( bool  success)
virtual

Reimplemented from OVSDB::OvsdbDBEntry.

Definition at line 316 of file unicast_mac_remote_ovsdb.cc.

Here is the call graph for this function:

void UnicastMacRemoteEntry::AddMsg ( struct ovsdb_idl_txn *  txn)
virtual

Reimplemented from OVSDB::OvsdbDBEntry.

Definition at line 109 of file unicast_mac_remote_ovsdb.cc.

Here is the call graph for this function:

void UnicastMacRemoteEntry::ChangeMsg ( struct ovsdb_idl_txn *  txn)
virtual

Reimplemented from OVSDB::OvsdbDBEntry.

Definition at line 156 of file unicast_mac_remote_ovsdb.cc.

Here is the call graph for this function:

void UnicastMacRemoteEntry::DeleteDupEntries ( struct ovsdb_idl_txn *  txn)
private

Definition at line 351 of file unicast_mac_remote_ovsdb.cc.

Here is the call graph for this function:

void UnicastMacRemoteEntry::DeleteMsg ( struct ovsdb_idl_txn *  txn)
virtual

Reimplemented from OVSDB::OvsdbDBEntry.

Definition at line 160 of file unicast_mac_remote_ovsdb.cc.

Here is the call graph for this function:

const std::string & UnicastMacRemoteEntry::dest_ip ( ) const

Definition at line 296 of file unicast_mac_remote_ovsdb.cc.

OVSDB::UnicastMacRemoteEntry::DISALLOW_COPY_AND_ASSIGN ( UnicastMacRemoteEntry  )
private
bool UnicastMacRemoteEntry::ecmp_suppressed ( ) const

Definition at line 312 of file unicast_mac_remote_ovsdb.cc.

bool UnicastMacRemoteEntry::IsLess ( const KSyncEntry entry) const
virtual

Implements KSyncEntry.

Definition at line 249 of file unicast_mac_remote_ovsdb.cc.

const std::string & UnicastMacRemoteEntry::logical_switch_name ( ) const

Definition at line 292 of file unicast_mac_remote_ovsdb.cc.

const std::string & UnicastMacRemoteEntry::mac ( ) const

Definition at line 288 of file unicast_mac_remote_ovsdb.cc.

void UnicastMacRemoteEntry::NotifyAdd ( struct ovsdb_idl_row *  row)
virtual

Reimplemented from OVSDB::OvsdbDBEntry.

Definition at line 66 of file unicast_mac_remote_ovsdb.cc.

Here is the call graph for this function:

void UnicastMacRemoteEntry::NotifyDelete ( struct ovsdb_idl_row *  row)
virtual

Reimplemented from OVSDB::OvsdbDBEntry.

Definition at line 78 of file unicast_mac_remote_ovsdb.cc.

Here is the call graph for this function:

void UnicastMacRemoteEntry::OvsdbChange ( )
virtual

Reimplemented from OVSDB::OvsdbDBEntry.

Definition at line 168 of file unicast_mac_remote_ovsdb.cc.

Here is the call graph for this function:

void UnicastMacRemoteEntry::PostDelete ( )
virtual

Reimplemented from OVSDB::OvsdbDBEntry.

Definition at line 105 of file unicast_mac_remote_ovsdb.cc.

void UnicastMacRemoteEntry::PreAddChange ( )
virtual

Reimplemented from OVSDB::OvsdbDBEntry.

Definition at line 86 of file unicast_mac_remote_ovsdb.cc.

Here is the call graph for this function:

void UnicastMacRemoteEntry::ReleaseLocatorCreateReference ( )
private

Definition at line 358 of file unicast_mac_remote_ovsdb.cc.

Here is the call graph for this function:

bool UnicastMacRemoteEntry::self_exported_route ( ) const

Definition at line 300 of file unicast_mac_remote_ovsdb.cc.

uint32_t UnicastMacRemoteEntry::self_sequence ( ) const

Definition at line 308 of file unicast_mac_remote_ovsdb.cc.

void UnicastMacRemoteEntry::SendTrace ( Trace  event) const
private

Definition at line 325 of file unicast_mac_remote_ovsdb.cc.

uint32_t UnicastMacRemoteEntry::sequence ( ) const

Definition at line 304 of file unicast_mac_remote_ovsdb.cc.

bool UnicastMacRemoteEntry::Sync ( DBEntry db_entry)
virtual

Implements KSyncDBEntry.

Definition at line 173 of file unicast_mac_remote_ovsdb.cc.

Here is the call graph for this function:

std::string OVSDB::UnicastMacRemoteEntry::ToString ( ) const
inlinevirtual

Implements KSyncEntry.

Definition at line 82 of file unicast_mac_remote_ovsdb.h.

void UnicastMacRemoteEntry::TxnDoneNoMessage ( )
virtual

Reimplemented from OVSDB::OvsdbEntryBase.

Definition at line 321 of file unicast_mac_remote_ovsdb.cc.

Here is the call graph for this function:

KSyncEntry * UnicastMacRemoteEntry::UnresolvedReference ( )
virtual

Implements KSyncEntry.

Definition at line 257 of file unicast_mac_remote_ovsdb.cc.

Here is the call graph for this function:

virtual bool OVSDB::UnicastMacRemoteEntry::UseBulkTxn ( )
inlinevirtual

Reimplemented from OVSDB::OvsdbDBEntry.

Definition at line 101 of file unicast_mac_remote_ovsdb.h.

Friends And Related Function Documentation

friend class UnicastMacRemoteTable
friend

Definition at line 104 of file unicast_mac_remote_ovsdb.h.

friend class VrfOvsdbObject
friend

Definition at line 105 of file unicast_mac_remote_ovsdb.h.

Member Data Documentation

std::string OVSDB::UnicastMacRemoteEntry::dest_ip_
private

Definition at line 116 of file unicast_mac_remote_ovsdb.h.

OvsdbDupIdlList OVSDB::UnicastMacRemoteEntry::dup_list_
private

Definition at line 118 of file unicast_mac_remote_ovsdb.h.

bool OVSDB::UnicastMacRemoteEntry::ecmp_suppressed_
private

Definition at line 121 of file unicast_mac_remote_ovsdb.h.

LogicalSwitchRef OVSDB::UnicastMacRemoteEntry::logical_switch_
private

Definition at line 122 of file unicast_mac_remote_ovsdb.h.

std::string OVSDB::UnicastMacRemoteEntry::logical_switch_name_
private

Definition at line 115 of file unicast_mac_remote_ovsdb.h.

std::string OVSDB::UnicastMacRemoteEntry::mac_
private

Definition at line 114 of file unicast_mac_remote_ovsdb.h.

KSyncEntryPtr OVSDB::UnicastMacRemoteEntry::pl_create_ref_
private

Definition at line 112 of file unicast_mac_remote_ovsdb.h.

bool OVSDB::UnicastMacRemoteEntry::self_exported_route_
private

Definition at line 117 of file unicast_mac_remote_ovsdb.h.

uint32_t OVSDB::UnicastMacRemoteEntry::self_sequence_
private

Definition at line 120 of file unicast_mac_remote_ovsdb.h.

uint32_t OVSDB::UnicastMacRemoteEntry::sequence_
private

Definition at line 119 of file unicast_mac_remote_ovsdb.h.


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