class LibFeaClientBridge

Bridge class to intervene between the FEA's interface manager and libfeaclient. More...

Definition#include <libfeaclient_bridge.hh>
InheritsIfConfigUpdateReporterBase [public ]
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Methods

Protected Methods

Protected Members


Detailed Description

The LibFeaClientBridge takes updates received from the FEA's interface manager and forwards them to registered remote libfeaclient users. For each update received, the bridge gets the all the state associated with the item being updated, and pushes it into a contained instance of an IfMgrXrlReplicationManager. If the data pushed into the IfMgrXrlReplicationManager triggers state changes in it's internal interface config representation, it forwards the changes to remote observers.

In addition to arranging to plumb the LibFeaClientBridge into the FEA to receive updates, it is imperative that the underlying IfTree object used represent state be available to the bridge. The bridge is made aware of this object through set_iftree. Failure to call method before an update is received will cause a fatal error.

 LibFeaClientBridge (XrlRouter& rtr)

LibFeaClientBridge

 ~LibFeaClientBridge ()

~LibFeaClientBridge

void  set_iftree (const IfTree* tree)

set_iftree

Set interface configuration tree to read from when an update is recorded through one of the update methods implemented from IfConfigUpdateReporterBase.

bool  add_libfeaclient_mirror (const string& xrl_target_name)

add_libfeaclient_mirror

Add named Xrl target to list to receive libfeaclient updates.

Parameters:
xrl_target_nameXrl target instance name.

Returns: true on success, false if target is already on the list.

bool  remove_libfeaclient_mirror (const string& xrl_target_name)

remove_libfeaclient_mirror

Add named Xrl target to list to receive libfeaclient updates.

Parameters:
xrl_target_nameXrl target instance name.

Returns: true on success, false if named target is not on the list.

inline const IfMgrIfTree&  libfeaclient_iftree ()

libfeaclient_iftree

[const]

Get reference to libfeaclient's interface configuration tree.

Returns: reference to tree.

inline const IfTree*  fea_iftree ()

fea_iftree

[const]

Get pointer FEA interface configuration tree that is being used to feed data into libfeaclient's interface configuration tree.

Returns: pointer to tree.

void  interface_update (const string& ifname, const Update& update, bool is_system_interfaces_reportee)

interface_update

[protected]

Reimplemented from IfConfigUpdateReporterBase.

void  vif_update (const string& ifname, const string& vifname, const Update& update, bool is_system_interfaces_reportee)

vif_update

[protected]

Reimplemented from IfConfigUpdateReporterBase.

void  vifaddr4_update (const string& ifname, const string& vifname, const IPv4& addr, const Update& update, bool is_system_interfaces_reportee)

vifaddr4_update

[protected]

Reimplemented from IfConfigUpdateReporterBase.

void  vifaddr6_update (const string& ifname, const string& vifname, const IPv6& addr, const Update& update, bool is_system_interfaces_reportee)

vifaddr6_update

[protected]

Reimplemented from IfConfigUpdateReporterBase.

IfMgrXrlReplicationManager* _rm

_rm

[protected]

const IfTree* _iftree

_iftree

[protected]


Generated by: pavlin on possum.icir.org on Thu Nov 6 23:46:57 2003, using kdoc 2.0a54+XORP.