OpenSDN source code
BgpXmppChannel::XmppPeer Class Reference
Inheritance diagram for BgpXmppChannel::XmppPeer:
Collaboration diagram for BgpXmppChannel::XmppPeer:

Public Member Functions

 XmppPeer (BgpServer *server, BgpXmppChannel *channel)
 
virtual ~XmppPeer ()
 
virtual bool MembershipPathCallback (DBTablePartBase *tpart, BgpRoute *rt, BgpPath *path)
 
virtual bool SendUpdate (const uint8_t *msg, size_t msgsize, const std::string *msg_str)
 
virtual bool SendUpdate (const uint8_t *msg, size_t msgsize)
 
virtual const string & ToString () const
 
virtual bool CanUseMembershipManager () const
 
virtual bool IsRegistrationRequired () const
 
virtual const string & ToUVEKey () const
 
virtual BgpServerserver ()
 
virtual BgpServerserver () const
 
virtual IPeerClosepeer_close ()
 
virtual IPeerClosepeer_close () const
 
void UpdateCloseRouteStats (Address::Family family, const BgpPath *old_path, uint32_t path_flags) const
 
virtual IPeerDebugStatspeer_stats ()
 
virtual const IPeerDebugStatspeer_stats () const
 
virtual bool IsReady () const
 
virtual const string GetStateName () const
 
virtual bool IsXmppPeer () const
 
virtual void Close (bool graceful)
 
const bool IsDeleted () const
 
void SetPeerClosed (bool closed)
 
uint64_t closed_at () const
 
virtual BgpProto::BgpPeerType PeerType () const
 
virtual uint32_t bgp_identifier () const
 
virtual void UpdateTotalPathCount (int count) const
 
virtual int GetTotalPathCount () const
 
virtual bool IsAs4Supported () const
 
virtual void UpdatePrimaryPathCount (int count, Address::Family family) const
 
virtual int GetPrimaryPathCount () const
 
virtual void ProcessPathTunnelEncapsulation (const BgpPath *path, BgpAttr *attr, ExtCommunityDB *extcomm_db, const BgpTable *table) const
 
virtual const std::vector< std::string > GetDefaultTunnelEncap (Address::Family family) const
 
virtual bool IsInGRTimerWaitState () const
 
void MembershipRequestCallback (BgpTable *table)
 
virtual bool send_ready () const
 
bool IsRouterTypeBGPaaS () const
 
- Public Member Functions inherited from IPeer
virtual ~IPeer ()
 
virtual bool CheckSplitHorizon (uint32_t cluster_id=0, uint32_t ribout_cid=0) const
 
- Public Member Functions inherited from IPeerUpdate
virtual ~IPeerUpdate ()
 
virtual bool FlushUpdate ()
 

Private Member Functions

void WriteReadyCb (const boost::system::error_code &ec)
 

Private Attributes

BgpServerserver_
 
BgpXmppChannelparent_
 
tbb::atomic< int > total_path_count_
 
tbb::atomic< int > primary_path_count_
 
bool is_closed_
 
bool send_ready_
 
uint64_t closed_at_
 

Detailed Description

Definition at line 258 of file bgp_xmpp_channel.cc.

Constructor & Destructor Documentation

◆ XmppPeer()

BgpXmppChannel::XmppPeer::XmppPeer ( BgpServer server,
BgpXmppChannel channel 
)
inline

Definition at line 260 of file bgp_xmpp_channel.cc.

◆ ~XmppPeer()

virtual BgpXmppChannel::XmppPeer::~XmppPeer ( )
inlinevirtual

Definition at line 270 of file bgp_xmpp_channel.cc.

Here is the call graph for this function:

Member Function Documentation

◆ bgp_identifier()

virtual uint32_t BgpXmppChannel::XmppPeer::bgp_identifier ( ) const
inlinevirtual

Implements IPeer.

Definition at line 364 of file bgp_xmpp_channel.cc.

Here is the call graph for this function:

◆ CanUseMembershipManager()

virtual bool BgpXmppChannel::XmppPeer::CanUseMembershipManager ( ) const
inlinevirtual

Implements IPeer.

Definition at line 304 of file bgp_xmpp_channel.cc.

Here is the call graph for this function:

◆ Close()

void BgpXmppChannel::XmppPeer::Close ( bool  graceful)
virtual

Implements IPeer.

Definition at line 468 of file bgp_xmpp_channel.cc.

Here is the call graph for this function:

◆ closed_at()

uint64_t BgpXmppChannel::XmppPeer::closed_at ( ) const
inline

Definition at line 358 of file bgp_xmpp_channel.cc.

◆ GetDefaultTunnelEncap()

virtual const std::vector<std::string> BgpXmppChannel::XmppPeer::GetDefaultTunnelEncap ( Address::Family  family) const
inlinevirtual

Implements IPeer.

Definition at line 390 of file bgp_xmpp_channel.cc.

◆ GetPrimaryPathCount()

virtual int BgpXmppChannel::XmppPeer::GetPrimaryPathCount ( ) const
inlinevirtual

Implements IPeer.

Definition at line 383 of file bgp_xmpp_channel.cc.

◆ GetStateName()

virtual const string BgpXmppChannel::XmppPeer::GetStateName ( ) const
inlinevirtual

Implements IPeer.

Definition at line 338 of file bgp_xmpp_channel.cc.

Here is the call graph for this function:

◆ GetTotalPathCount()

virtual int BgpXmppChannel::XmppPeer::GetTotalPathCount ( ) const
inlinevirtual

Implements IPeer.

Definition at line 375 of file bgp_xmpp_channel.cc.

◆ IsAs4Supported()

virtual bool BgpXmppChannel::XmppPeer::IsAs4Supported ( ) const
inlinevirtual

Implements IPeer.

Definition at line 378 of file bgp_xmpp_channel.cc.

◆ IsDeleted()

const bool BgpXmppChannel::XmppPeer::IsDeleted ( ) const
inline

Definition at line 352 of file bgp_xmpp_channel.cc.

◆ IsInGRTimerWaitState()

virtual bool BgpXmppChannel::XmppPeer::IsInGRTimerWaitState ( ) const
inlinevirtual

Implements IPeer.

Definition at line 394 of file bgp_xmpp_channel.cc.

◆ IsReady()

virtual bool BgpXmppChannel::XmppPeer::IsReady ( ) const
inlinevirtual

Implements IPeer.

Definition at line 335 of file bgp_xmpp_channel.cc.

Here is the call graph for this function:

◆ IsRegistrationRequired()

virtual bool BgpXmppChannel::XmppPeer::IsRegistrationRequired ( ) const
inlinevirtual

Implements IPeer.

Definition at line 308 of file bgp_xmpp_channel.cc.

◆ IsRouterTypeBGPaaS()

bool BgpXmppChannel::XmppPeer::IsRouterTypeBGPaaS ( ) const
inlinevirtual

Implements IPeer.

Definition at line 403 of file bgp_xmpp_channel.cc.

◆ IsXmppPeer()

virtual bool BgpXmppChannel::XmppPeer::IsXmppPeer ( ) const
inlinevirtual

Implements IPeer.

Definition at line 347 of file bgp_xmpp_channel.cc.

◆ MembershipPathCallback()

virtual bool BgpXmppChannel::XmppPeer::MembershipPathCallback ( DBTablePartBase tpart,
BgpRoute rt,
BgpPath path 
)
inlinevirtual

Implements IPeer.

Definition at line 285 of file bgp_xmpp_channel.cc.

Here is the call graph for this function:

◆ MembershipRequestCallback()

void BgpXmppChannel::XmppPeer::MembershipRequestCallback ( BgpTable table)
inlinevirtual

Implements IPeer.

Definition at line 398 of file bgp_xmpp_channel.cc.

Here is the call graph for this function:

◆ peer_close() [1/2]

virtual IPeerClose* BgpXmppChannel::XmppPeer::peer_close ( )
inlinevirtual

Implements IPeer.

Definition at line 316 of file bgp_xmpp_channel.cc.

◆ peer_close() [2/2]

virtual IPeerClose* BgpXmppChannel::XmppPeer::peer_close ( ) const
inlinevirtual

Implements IPeer.

Definition at line 319 of file bgp_xmpp_channel.cc.

◆ peer_stats() [1/2]

virtual IPeerDebugStats* BgpXmppChannel::XmppPeer::peer_stats ( )
inlinevirtual

Implements IPeer.

Definition at line 328 of file bgp_xmpp_channel.cc.

◆ peer_stats() [2/2]

virtual const IPeerDebugStats* BgpXmppChannel::XmppPeer::peer_stats ( ) const
inlinevirtual

Implements IPeer.

Definition at line 331 of file bgp_xmpp_channel.cc.

◆ PeerType()

virtual BgpProto::BgpPeerType BgpXmppChannel::XmppPeer::PeerType ( ) const
inlinevirtual

Implements IPeer.

Definition at line 360 of file bgp_xmpp_channel.cc.

◆ ProcessPathTunnelEncapsulation()

virtual void BgpXmppChannel::XmppPeer::ProcessPathTunnelEncapsulation ( const BgpPath path,
BgpAttr attr,
ExtCommunityDB extcomm_db,
const BgpTable table 
) const
inlinevirtual

Implements IPeer.

Definition at line 386 of file bgp_xmpp_channel.cc.

◆ send_ready()

virtual bool BgpXmppChannel::XmppPeer::send_ready ( ) const
inlinevirtual

Reimplemented from IPeerUpdate.

Definition at line 402 of file bgp_xmpp_channel.cc.

◆ SendUpdate() [1/2]

virtual bool BgpXmppChannel::XmppPeer::SendUpdate ( const uint8_t *  msg,
size_t  msgsize 
)
inlinevirtual

Implements IPeerUpdate.

Definition at line 297 of file bgp_xmpp_channel.cc.

Here is the call graph for this function:

◆ SendUpdate() [2/2]

virtual bool BgpXmppChannel::XmppPeer::SendUpdate ( const uint8_t *  msg,
size_t  msgsize,
const std::string *  msg_str 
)
virtual

Reimplemented from IPeerUpdate.

◆ server() [1/2]

virtual BgpServer* BgpXmppChannel::XmppPeer::server ( )
inlinevirtual

Implements IPeer.

Definition at line 314 of file bgp_xmpp_channel.cc.

◆ server() [2/2]

virtual BgpServer* BgpXmppChannel::XmppPeer::server ( ) const
inlinevirtual

Implements IPeer.

Definition at line 315 of file bgp_xmpp_channel.cc.

◆ SetPeerClosed()

void BgpXmppChannel::XmppPeer::SetPeerClosed ( bool  closed)
inline

Definition at line 353 of file bgp_xmpp_channel.cc.

Here is the call graph for this function:

◆ ToString()

virtual const string& BgpXmppChannel::XmppPeer::ToString ( ) const
inlinevirtual

Implements IPeer.

Definition at line 300 of file bgp_xmpp_channel.cc.

Here is the call graph for this function:

◆ ToUVEKey()

virtual const string& BgpXmppChannel::XmppPeer::ToUVEKey ( ) const
inlinevirtual

Implements IPeer.

Definition at line 310 of file bgp_xmpp_channel.cc.

Here is the call graph for this function:

◆ UpdateCloseRouteStats()

void BgpXmppChannel::XmppPeer::UpdateCloseRouteStats ( Address::Family  family,
const BgpPath old_path,
uint32_t  path_flags 
) const
inlinevirtual

Implements IPeer.

Definition at line 323 of file bgp_xmpp_channel.cc.

Here is the call graph for this function:

◆ UpdatePrimaryPathCount()

virtual void BgpXmppChannel::XmppPeer::UpdatePrimaryPathCount ( int  count,
Address::Family  family 
) const
inlinevirtual

Implements IPeer.

Definition at line 379 of file bgp_xmpp_channel.cc.

◆ UpdateTotalPathCount()

virtual void BgpXmppChannel::XmppPeer::UpdateTotalPathCount ( int  count) const
inlinevirtual

Implements IPeer.

Definition at line 372 of file bgp_xmpp_channel.cc.

◆ WriteReadyCb()

void BgpXmppChannel::XmppPeer::WriteReadyCb ( const boost::system::error_code &  ec)
inlineprivate

Definition at line 406 of file bgp_xmpp_channel.cc.

Here is the call graph for this function:

Member Data Documentation

◆ closed_at_

uint64_t BgpXmppChannel::XmppPeer::closed_at_
private

Definition at line 424 of file bgp_xmpp_channel.cc.

◆ is_closed_

bool BgpXmppChannel::XmppPeer::is_closed_
private

Definition at line 422 of file bgp_xmpp_channel.cc.

◆ parent_

BgpXmppChannel* BgpXmppChannel::XmppPeer::parent_
private

Definition at line 419 of file bgp_xmpp_channel.cc.

◆ primary_path_count_

tbb::atomic<int> BgpXmppChannel::XmppPeer::primary_path_count_
mutableprivate

Definition at line 421 of file bgp_xmpp_channel.cc.

◆ send_ready_

bool BgpXmppChannel::XmppPeer::send_ready_
private

Definition at line 423 of file bgp_xmpp_channel.cc.

◆ server_

BgpServer* BgpXmppChannel::XmppPeer::server_
private

Definition at line 418 of file bgp_xmpp_channel.cc.

◆ total_path_count_

tbb::atomic<int> BgpXmppChannel::XmppPeer::total_path_count_
mutableprivate

Definition at line 420 of file bgp_xmpp_channel.cc.


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