xorp

NotifyQueueChangedEntry< A > Class Template Reference

Notification Queue entry indicating that a change occured to the metric, admin_distance or nexthop of a route in which interest was registered. More...

#include <register_server.hh>

Inheritance diagram for NotifyQueueChangedEntry< A >:
NotifyQueueEntry

List of all members.

Public Member Functions

 NotifyQueueChangedEntry (const IPNet< A > &net, const A &nexthop, uint32_t metric, uint32_t admin_distance, const string &protocol_origin, bool multicast)
 NotifyQueueChangedEntry Constructor.
EntryType type () const
void send (ResponseSender *response_sender, const string &module_name, NotifyQueue::XrlCompleteCB &cb)
 Actually send the XRL that communicates this change to the registered process.
template<>
void send (ResponseSender *response_sender, const string &module_name, NotifyQueue::XrlCompleteCB &cb)
 Send the queue entry (pure virtual)

Private Attributes

IPNet< A > _net
_nexthop
uint32_t _metric
uint32_t _admin_distance
string _protocol_origin
bool _multicast

Detailed Description

template<class A>
class NotifyQueueChangedEntry< A >

Notification Queue entry indicating that a change occured to the metric, admin_distance or nexthop of a route in which interest was registered.

The template class A is the address family: either the IPv4 class or the IPv6 class.


Constructor & Destructor Documentation

template<class A >
NotifyQueueChangedEntry< A >::NotifyQueueChangedEntry ( const IPNet< A > &  net,
const A &  nexthop,
uint32_t  metric,
uint32_t  admin_distance,
const string &  protocol_origin,
bool  multicast 
) [inline]

NotifyQueueChangedEntry Constructor.

Parameters:
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 adminstratively defined distance of the routing protocol this routing entry was computed by.
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.

Member Function Documentation

template<class A >
void NotifyQueueChangedEntry< A >::send ( ResponseSender response_sender,
const string &  module_name,
NotifyQueue::XrlCompleteCB &  cb 
) [virtual]

Actually send the XRL that communicates this change to the registered process.

Parameters:
response_senderthe auto-generated stub class instance that will do the parameter marchalling.
module_namethe XRL module target name to send this information to.
cbthe method to call back when this XRL completes.

Implements NotifyQueueEntry.

template<class A >
EntryType NotifyQueueChangedEntry< A >::type ( ) const [inline, virtual]
Returns:
CHANGED
See also:
NotifyQueueEntry::EntryType

Implements NotifyQueueEntry.


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