class NotifyQueue

Queue of route event notifications. More...

Definition#include <register_server.hh>
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Types

Public Methods


Detailed Description

A NotfiyQueue holds a queue of route event notifications waiting transmission to the XORP process that registered interest in route changes that affected one or more routes. When a lot of routes change, we need to queue the changes because we may generate them faster than the recipient can handle being told about them.

 NotifyQueue (const string& modname)

NotifyQueue

NotifyQueue constructor

Parameters:
modnamethe XRL module target name for the process that this queue holds notifications for.

void  add_entry (NotifyQueueEntry *e)

add_entry

Add an notification entry to the queue.

Parameters:
ethe notification entry to be queued.

void  send_next ()

send_next

Send the next entry in the queue to this queue's XRL target.

void  flush (ResponseSender *response_sender)

flush

Flush is an indication to the queue that the changes since the last flush can be checked for consolidation. Several add_entry events might occur in rapid succession affecting the same route. A flush indicates that it is OK to start sending this batch of changes (and to consolidate those changes to avoid thrashing, but we don't currently do this).

typedef XorpCallback1<void, const XrlError&>::RefPtr XrlCompleteCB

XrlCompleteCB

void  xrl_done (const XrlError& e)

xrl_done

XRL transmit complete callback. We use this to cause the next item in the queue to be sent.

Parameters:
ethe XRL completion status code.


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