|
|
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.
LibFeaClientBridge (XrlRouter& rtr,
IfConfigUpdateReplicator& update_replicator)
| LibFeaClientBridge |
~LibFeaClientBridge ()
| ~LibFeaClientBridge |
int add_libfeaclient_mirror (const string& xrl_target_instance_name)
| add_libfeaclient_mirror |
Add named Xrl target to list to receive libfeaclient updates.
Parameters:
xrl_target_instance_name | Xrl target instance name. |
Returns: XORP_OK on success, otherwise XORP_ERROR.
int remove_libfeaclient_mirror (const string& xrl_target_instance_name)
| remove_libfeaclient_mirror |
Remove named Xrl target from the list to receive libfeaclient updates.
Parameters:
xrl_target_instance_name | Xrl target instance name. |
Returns: XORP_OK on success, otherwise XORP_ERROR.
void interface_update (const string& ifname,
const Update& update)
| interface_update |
[protected]
Reimplemented from IfConfigUpdateReporterBase.
void vif_update (const string& ifname,
const string& vifname,
const Update& update)
| vif_update |
[protected]
Reimplemented from IfConfigUpdateReporterBase.
void vifaddr4_update (const string& ifname,
const string& vifname,
const IPv4& addr,
const Update& update)
| vifaddr4_update |
[protected]
Reimplemented from IfConfigUpdateReporterBase.
void vifaddr6_update (const string& ifname,
const string& vifname,
const IPv6& addr,
const Update& update)
| vifaddr6_update |
[protected]
Reimplemented from IfConfigUpdateReporterBase.
void updates_completed ()
| updates_completed |
[protected]
Reimplemented from IfConfigUpdateReporterBase.
IfMgrXrlReplicationManager* _rm | _rm |
[protected]