xorp

RegisterServer Class Reference

RegisterServer handles communication of notifications to the clients that registered interest in changes affecting specific routes. More...

#include <register_server.hh>

Inheritance diagram for RegisterServer:
DummyRegisterServer

List of all members.

Public Member Functions

 RegisterServer (XrlRouter *xrl_router)
 RegisterServer constructor.
virtual ~RegisterServer ()
 RegisterServer destructor.
virtual void send_route_changed (const string &module_name, const IPv4Net &net, const IPv4 &nexthop, uint32_t metric, uint32_t admin_distance, const string &protocol_origin, bool multicast)
 send_route_changed is called to communicate to another XRL module that routing information in which it had registered an interest has changed its nexthop, metric, or admin distance.
virtual void send_invalidate (const string &module_name, const IPv4Net &net, bool multicast)
virtual void flush ()

Protected Member Functions

void add_entry_to_queue (const string &module_name, NotifyQueueEntry *e)

Protected Attributes

map< string, NotifyQueue * > _queuemap
ResponseSender _response_sender

Detailed Description

RegisterServer handles communication of notifications to the clients that registered interest in changes affecting specific routes.

RegisterServer handles communication of notifications to the clients that registered interest in changes affecting specific routes. As these notifications can sometimes be generated faster than the recipient can handle them, the notifications can be queued here.


Constructor & Destructor Documentation

RegisterServer::RegisterServer ( XrlRouter xrl_router)

RegisterServer constructor.

Parameters:
xrl_routerthe XRL router instance used to send and receive XRLs in this process.

Member Function Documentation

void RegisterServer::flush ( ) [virtual]
See also:
NotifyQueue::flush

Reimplemented in DummyRegisterServer.

void RegisterServer::send_route_changed ( const string &  module_name,
const IPv4Net net,
const IPv4 nexthop,
uint32_t  metric,
uint32_t  admin_distance,
const string &  protocol_origin,
bool  multicast 
) [virtual]

send_route_changed is called to communicate to another XRL module that routing information in which it had registered an interest has changed its nexthop, metric, or admin distance.

Parameters:
module_namethe XRL target name of the module to notify.
netthe destination subnet of the route that changed.
nexthopthe new nexthop of the route that changed.
metricthe new routing protocol metric of the route that changed.
admin_distancethe new admin distance of the route that changed.
protocol_originthe name of the protocol that originated this route.
multicasttrue indicates that the change occured in the multicast RIB, false indicates that it occured in the unicast RIB.

Reimplemented in DummyRegisterServer.


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