xorp

LibFeaClientBridge Class Reference

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

#include <libfeaclient_bridge.hh>

Inheritance diagram for LibFeaClientBridge:
IfConfigUpdateReporterBase

List of all members.

Public Member Functions

 LibFeaClientBridge (XrlRouter &rtr, IfConfigUpdateReplicator &update_replicator)
int add_libfeaclient_mirror (const string &xrl_target_instance_name)
 Add named Xrl target to list to receive libfeaclient updates.
int remove_libfeaclient_mirror (const string &xrl_target_instance_name)
 Remove named Xrl target from the list to receive libfeaclient updates.

Protected Member Functions

void interface_update (const string &ifname, const Update &update)
void vif_update (const string &ifname, const string &vifname, const Update &update)
void vifaddr4_update (const string &ifname, const string &vifname, const IPv4 &addr, const Update &update)
void updates_completed ()

Protected Attributes

IfMgrXrlReplicationManager_rm

Detailed Description

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

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 iftree. Failure to call method before an update is received will cause a fatal error.


Member Function Documentation

int LibFeaClientBridge::add_libfeaclient_mirror ( const string &  xrl_target_instance_name)

Add named Xrl target to list to receive libfeaclient updates.

Parameters:
xrl_target_instance_nameXrl target instance name.
Returns:
XORP_OK on success, otherwise XORP_ERROR.
int LibFeaClientBridge::remove_libfeaclient_mirror ( const string &  xrl_target_instance_name)

Remove named Xrl target from the list to receive libfeaclient updates.

Parameters:
xrl_target_instance_nameXrl target instance name.
Returns:
XORP_OK on success, otherwise XORP_ERROR.

The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations