#include <bgp_membership.h>
|
| | BgpMembershipManager (BgpServer *server) |
| |
| virtual | ~BgpMembershipManager () |
| |
| int | RegisterPeerRegistrationCallback (PeerRegistrationCallback callback) |
| |
| void | UnregisterPeerRegistrationCallback (int id) |
| |
| virtual void | Register (IPeer *peer, BgpTable *table, const RibExportPolicy &policy, int instance_id=-1) |
| |
| void | RegisterRibIn (IPeer *peer, BgpTable *table) |
| |
| virtual void | Unregister (IPeer *peer, BgpTable *table) |
| |
| void | UnregisterRibIn (IPeer *peer, BgpTable *table) |
| |
| virtual void | UnregisterRibOut (IPeer *peer, BgpTable *table) |
| |
| void | WalkRibIn (IPeer *peer, BgpTable *table) |
| |
| bool | GetRegistrationInfo (const IPeer *peer, const BgpTable *table, int *instance_id=NULL, uint64_t *subscription_gen_id=NULL) const |
| |
| void | SetRegistrationInfo (const IPeer *peer, const BgpTable *table, int instance_id, uint64_t subscription_gen_id) |
| |
| bool | IsRegistered (const IPeer *peer, const BgpTable *table) const |
| |
| bool | IsRibInRegistered (const IPeer *peer, const BgpTable *table) const |
| |
| bool | IsRibOutRegistered (const IPeer *peer, const BgpTable *table) const |
| |
| uint32_t | GetRibOutQueueDepth (const IPeer *peer, const BgpTable *table) const |
| |
| void | GetRegisteredRibs (const IPeer *peer, std::list< BgpTable * > *table_list) const |
| |
| void | FillRoutingInstanceTableInfo (ShowRoutingInstanceTable *srit, const BgpTable *table) const |
| |
| void | FillPeerMembershipInfo (const IPeer *peer, BgpNeighborResp *resp) const |
| |
| BgpServer * | server () |
| |
| bool | IsQueueEmpty () const |
| |
| size_t | GetMembershipCount () const |
| |
| uint64_t | current_jobs_count () const |
| |
| uint64_t | total_jobs_count () const |
| |
|
| enum | Action {
NONE
, RIBOUT_ADD
, RIBIN_DELETE
, RIBIN_WALK
,
RIBIN_WALK_RIBOUT_DELETE
, RIBIN_DELETE_RIBOUT_DELETE
} |
| |
| enum | EventType {
REGISTER_RIB
, REGISTER_RIB_COMPLETE
, UNREGISTER_RIB
, UNREGISTER_RIB_COMPLETE
,
WALK_RIB_COMPLETE
} |
| |
| typedef std::vector< PeerRegistrationCallback > | PeerRegistrationListenerList |
| |
| typedef std::map< const IPeer *, PeerState * > | PeerStateMap |
| |
| typedef std::map< const BgpTable *, RibState * > | RibStateMap |
| |
| typedef std::set< PeerRibState * > | PeerRibList |
| |
Definition at line 86 of file bgp_membership.h.
◆ PeerRegistrationCallback
◆ PeerRegistrationListenerList
◆ PeerRibList
◆ PeerStateMap
◆ RibStateMap
◆ Action
| Enumerator |
|---|
| NONE | |
| RIBOUT_ADD | |
| RIBIN_DELETE | |
| RIBIN_WALK | |
| RIBIN_WALK_RIBOUT_DELETE | |
| RIBIN_DELETE_RIBOUT_DELETE | |
Definition at line 155 of file bgp_membership.h.
◆ EventType
| Enumerator |
|---|
| REGISTER_RIB | |
| REGISTER_RIB_COMPLETE | |
| UNREGISTER_RIB | |
| UNREGISTER_RIB_COMPLETE | |
| WALK_RIB_COMPLETE | |
Definition at line 164 of file bgp_membership.h.
◆ BgpMembershipManager()
| BgpMembershipManager::BgpMembershipManager |
( |
BgpServer * |
server | ) |
|
|
explicit |
◆ ~BgpMembershipManager()
| BgpMembershipManager::~BgpMembershipManager |
( |
| ) |
|
|
virtual |
◆ AssertRegister()
| bool BgpMembershipManager::AssertRegister |
( |
PeerRibState * |
prs, |
|
|
bool |
do_assert = true |
|
) |
| |
|
protectedvirtual |
◆ AssertRegisterRibIn()
| bool BgpMembershipManager::AssertRegisterRibIn |
( |
PeerRibState * |
prs, |
|
|
IPeer * |
peer, |
|
|
bool |
do_assert = true |
|
) |
| |
|
protectedvirtual |
◆ AssertUnregister()
| bool BgpMembershipManager::AssertUnregister |
( |
PeerRibState * |
prs, |
|
|
bool |
do_assert = true |
|
) |
| |
|
protectedvirtual |
◆ AssertWalkRibIn()
| bool BgpMembershipManager::AssertWalkRibIn |
( |
PeerRibState * |
prs, |
|
|
bool |
do_assert = true |
|
) |
| |
|
protectedvirtual |
◆ current_jobs_count()
| uint64_t BgpMembershipManager::current_jobs_count |
( |
| ) |
const |
|
inline |
◆ DestroyPeerRibState()
| void BgpMembershipManager::DestroyPeerRibState |
( |
PeerRibState * |
prs | ) |
|
|
private |
◆ DestroyPeerState()
| void BgpMembershipManager::DestroyPeerState |
( |
PeerState * |
ps | ) |
|
|
private |
◆ DestroyRibState()
| void BgpMembershipManager::DestroyRibState |
( |
RibState * |
ps | ) |
|
|
private |
◆ DISALLOW_COPY_AND_ASSIGN()
◆ EnqueueEvent()
| void BgpMembershipManager::EnqueueEvent |
( |
Event * |
event | ) |
|
|
inlineprivate |
◆ EnqueueRibState()
| void BgpMembershipManager::EnqueueRibState |
( |
RibState * |
rs | ) |
|
|
private |
◆ EventCallback()
| bool BgpMembershipManager::EventCallback |
( |
Event * |
event | ) |
|
|
private |
◆ EventCallbackInternal()
| bool BgpMembershipManager::EventCallbackInternal |
( |
Event * |
event | ) |
|
|
protectedvirtual |
◆ FillPeerMembershipInfo()
| void BgpMembershipManager::FillPeerMembershipInfo |
( |
const IPeer * |
peer, |
|
|
BgpNeighborResp * |
resp |
|
) |
| const |
◆ FillRoutingInstanceTableInfo()
| void BgpMembershipManager::FillRoutingInstanceTableInfo |
( |
ShowRoutingInstanceTable * |
srit, |
|
|
const BgpTable * |
table |
|
) |
| const |
◆ FindPeerRibState() [1/2]
◆ FindPeerRibState() [2/2]
◆ FindPeerState() [1/2]
◆ FindPeerState() [2/2]
◆ FindRibState() [1/2]
◆ FindRibState() [2/2]
◆ GetMembershipCount()
| size_t BgpMembershipManager::GetMembershipCount |
( |
| ) |
const |
◆ GetRegisteredRibs()
| void BgpMembershipManager::GetRegisteredRibs |
( |
const IPeer * |
peer, |
|
|
std::list< BgpTable * > * |
table_list |
|
) |
| const |
◆ GetRegistrationInfo()
| bool BgpMembershipManager::GetRegistrationInfo |
( |
const IPeer * |
peer, |
|
|
const BgpTable * |
table, |
|
|
int * |
instance_id = NULL, |
|
|
uint64_t * |
subscription_gen_id = NULL |
|
) |
| const |
◆ GetRibOutQueueDepth()
| uint32_t BgpMembershipManager::GetRibOutQueueDepth |
( |
const IPeer * |
peer, |
|
|
const BgpTable * |
table |
|
) |
| const |
◆ IsQueueEmpty()
| bool BgpMembershipManager::IsQueueEmpty |
( |
| ) |
const |
◆ IsRegistered()
| bool BgpMembershipManager::IsRegistered |
( |
const IPeer * |
peer, |
|
|
const BgpTable * |
table |
|
) |
| const |
◆ IsRibInRegistered()
| bool BgpMembershipManager::IsRibInRegistered |
( |
const IPeer * |
peer, |
|
|
const BgpTable * |
table |
|
) |
| const |
◆ IsRibOutRegistered()
| bool BgpMembershipManager::IsRibOutRegistered |
( |
const IPeer * |
peer, |
|
|
const BgpTable * |
table |
|
) |
| const |
◆ LocatePeerRibState()
◆ LocatePeerState()
◆ LocateRibState()
◆ NotifyPeerRegistration()
| void BgpMembershipManager::NotifyPeerRegistration |
( |
IPeer * |
peer, |
|
|
BgpTable * |
table, |
|
|
bool |
unregister |
|
) |
| |
|
private |
◆ ProcessRegisterRibCompleteEvent()
| void BgpMembershipManager::ProcessRegisterRibCompleteEvent |
( |
Event * |
event | ) |
|
|
private |
◆ ProcessRegisterRibEvent()
| void BgpMembershipManager::ProcessRegisterRibEvent |
( |
Event * |
event | ) |
|
|
private |
◆ ProcessUnregisterRibCompleteEvent()
| void BgpMembershipManager::ProcessUnregisterRibCompleteEvent |
( |
Event * |
event | ) |
|
|
private |
◆ ProcessUnregisterRibEvent()
| void BgpMembershipManager::ProcessUnregisterRibEvent |
( |
Event * |
event | ) |
|
|
private |
◆ ProcessWalkRibCompleteEvent()
| void BgpMembershipManager::ProcessWalkRibCompleteEvent |
( |
Event * |
event | ) |
|
|
private |
◆ Register()
◆ RegisterPeerRegistrationCallback()
◆ RegisterRibIn()
| void BgpMembershipManager::RegisterRibIn |
( |
IPeer * |
peer, |
|
|
BgpTable * |
table |
|
) |
| |
◆ server()
◆ SetQueueDisable()
| void BgpMembershipManager::SetQueueDisable |
( |
bool |
value | ) |
|
|
inlineprivate |
◆ SetRegistrationInfo()
| void BgpMembershipManager::SetRegistrationInfo |
( |
const IPeer * |
peer, |
|
|
const BgpTable * |
table, |
|
|
int |
instance_id, |
|
|
uint64_t |
subscription_gen_id |
|
) |
| |
◆ total_jobs_count()
| uint64_t BgpMembershipManager::total_jobs_count |
( |
| ) |
const |
|
inline |
◆ TriggerRegisterRibCompleteEvent()
| void BgpMembershipManager::TriggerRegisterRibCompleteEvent |
( |
IPeer * |
peer, |
|
|
BgpTable * |
table |
|
) |
| |
|
private |
◆ TriggerUnregisterRibCompleteEvent()
| void BgpMembershipManager::TriggerUnregisterRibCompleteEvent |
( |
IPeer * |
peer, |
|
|
BgpTable * |
table |
|
) |
| |
|
private |
◆ TriggerWalkRibCompleteEvent()
| void BgpMembershipManager::TriggerWalkRibCompleteEvent |
( |
IPeer * |
peer, |
|
|
BgpTable * |
table |
|
) |
| |
|
private |
◆ Unregister()
| void BgpMembershipManager::Unregister |
( |
IPeer * |
peer, |
|
|
BgpTable * |
table |
|
) |
| |
|
virtual |
◆ UnregisterPeerRegistrationCallback()
| void BgpMembershipManager::UnregisterPeerRegistrationCallback |
( |
int |
id | ) |
|
◆ UnregisterRibIn()
| void BgpMembershipManager::UnregisterRibIn |
( |
IPeer * |
peer, |
|
|
BgpTable * |
table |
|
) |
| |
◆ UnregisterRibInUnlocked()
| void BgpMembershipManager::UnregisterRibInUnlocked |
( |
PeerRibState * |
prs | ) |
|
|
private |
◆ UnregisterRibOut()
| void BgpMembershipManager::UnregisterRibOut |
( |
IPeer * |
peer, |
|
|
BgpTable * |
table |
|
) |
| |
|
virtual |
◆ walker()
| Walker* BgpMembershipManager::walker |
( |
| ) |
|
|
inlineprivate |
◆ WalkRibIn()
| void BgpMembershipManager::WalkRibIn |
( |
IPeer * |
peer, |
|
|
BgpTable * |
table |
|
) |
| |
◆ BgpMembershipManager::PeerRibState
◆ BgpMembershipManager::PeerState
◆ BgpMembershipManager::RibState
◆ BgpMembershipManager::Walker
◆ BgpMembershipTest
| friend class BgpMembershipTest |
|
friend |
◆ BgpServerUnitTest
| friend class BgpServerUnitTest |
|
friend |
◆ BgpXmppUnitTest
| friend class BgpXmppUnitTest |
|
friend |
◆ current_jobs_count_
| tbb::atomic<uint64_t> BgpMembershipManager::current_jobs_count_ |
|
private |
◆ event_queue_
| boost::scoped_ptr<WorkQueue<Event *> > BgpMembershipManager::event_queue_ |
|
private |
◆ peer_state_map_
◆ registration_bmap_
| boost::dynamic_bitset BgpMembershipManager::registration_bmap_ |
|
private |
◆ registration_callbacks_
◆ rib_state_map_
◆ rw_mutex_
| tbb::spin_rw_mutex BgpMembershipManager::rw_mutex_ |
|
mutableprotected |
◆ server_
◆ total_jobs_count_
| tbb::atomic<uint64_t> BgpMembershipManager::total_jobs_count_ |
|
private |
◆ walker_
| boost::scoped_ptr<Walker> BgpMembershipManager::walker_ |
|
private |
The documentation for this class was generated from the following files: