be.ac.ulg.montefiore.run.totem.domain.model
Interface DomainChangeObserver

All Known Implementing Classes:
DomainChangeObserverImpl

public interface DomainChangeObserver

A DomainChangeObserver is associated to a Domain and notify to all listeners the Domain changes. The priorities of the listeners define the order in which they are notified.

Creation date: 12-Jan-2005 18:12:00

Author:
Fabian Skivee (skivee@run.montefiore.ulg.ac.be), Jean Lepropre (lepropre@run.montefiore.ulg.ac.be)

Field Summary
static int HIGHEST_PRIORITY
           
static int LOWEST_PRIORITY
           
 
Method Summary
 void addListener(DomainChangeListener l)
          Adds a listener with the lowest priority.
 void addListener(DomainChangeListener l, int priority)
          Adds a listener with the specified priority.
 int getNbListeners()
          return the total number of listeners
 int getNbListeners(int priority)
          return the number of listeners for all priorites inferior or equal to priority
 void notifyAddLink(Link link)
          Notify link add
 void notifyAddLsp(Lsp lsp)
          Notify LSP add
 void notifyAddNode(Node node)
          Notify node add
 void notifyLinkBandwidthChange(Link link)
          Notify link bandwidth change
 void notifyLinkDelayChange(Link link)
          Notify link delay change
 void notifyLinkMetricChange(Link link)
          Notify link metric change
 void notifyLinkReservedBandwidthChange(Link link)
          Notify link reserved bandwidth change
 void notifyLinkStatusChange(Link link)
          Notify link status change
 void notifyLinkTeMetricChange(Link link)
          Notify link TE metric change
 void notifyLspReservationChange(Lsp lsp)
          Notify LSP reservation change
 void notifyLspWorkingPathChange(Lsp lsp)
          Notify a change in the working path of the lsp
 void notifyNodeLocationChange(Node node)
          Notify a node location change
 void notifyNodeStatusChange(Node node)
          Notify node status change
 void notifyRemoveLink(Link link)
          Notify link remove
 void notifyRemoveLsp(Lsp lsp)
          Notify LSP remove
 void notifyRemoveNode(Node node)
          Notify node remove
 void notifyRerouteLsp(Lsp lsp)
          Notify the fact that a LSP must be rerouted.
 void removeAllListeners()
          Removes all listeners.
 void removeListener(DomainChangeListener l)
          Removes the listener l.
 

Field Detail

LOWEST_PRIORITY

static final int LOWEST_PRIORITY
See Also:
Constant Field Values

HIGHEST_PRIORITY

static final int HIGHEST_PRIORITY
See Also:
Constant Field Values
Method Detail

addListener

void addListener(DomainChangeListener l)
Adds a listener with the lowest priority. This method does nothing if l is already registered.

Parameters:
l - The listener to add.

addListener

void addListener(DomainChangeListener l,
                 int priority)
                 throws DomainChangeObserverException
Adds a listener with the specified priority. This method does nothing if l is already registered.

Parameters:
l - The listener to add.
priority - The priority of the listener. This must be greater or equal than LOWEST_PRIORITY and lower or equal than HIGHEST_PRIORITY.
Throws:
DomainChangeObserverException - If priority is invalid.

removeListener

void removeListener(DomainChangeListener l)
Removes the listener l. This method does nothing if l is not registered.

Parameters:
l - The listener to remove.

removeAllListeners

void removeAllListeners()
Removes all listeners.


getNbListeners

int getNbListeners(int priority)
return the number of listeners for all priorites inferior or equal to priority

Parameters:
priority -
Returns:

getNbListeners

int getNbListeners()
return the total number of listeners

Returns:

notifyAddNode

void notifyAddNode(Node node)
Notify node add

Parameters:
node -

notifyRemoveNode

void notifyRemoveNode(Node node)
Notify node remove

Parameters:
node -

notifyNodeStatusChange

void notifyNodeStatusChange(Node node)
Notify node status change

Parameters:
node -

notifyNodeLocationChange

void notifyNodeLocationChange(Node node)
Notify a node location change

Parameters:
node -

notifyAddLink

void notifyAddLink(Link link)
Notify link add

Parameters:
link -

notifyRemoveLink

void notifyRemoveLink(Link link)
Notify link remove

Parameters:
link -

notifyLinkStatusChange

void notifyLinkStatusChange(Link link)
Notify link status change

Parameters:
link -

notifyLinkMetricChange

void notifyLinkMetricChange(Link link)
Notify link metric change

Parameters:
link -

notifyLinkTeMetricChange

void notifyLinkTeMetricChange(Link link)
Notify link TE metric change

Parameters:
link -

notifyLinkBandwidthChange

void notifyLinkBandwidthChange(Link link)
Notify link bandwidth change

Parameters:
link -

notifyLinkReservedBandwidthChange

void notifyLinkReservedBandwidthChange(Link link)
Notify link reserved bandwidth change

Parameters:
link -

notifyLinkDelayChange

void notifyLinkDelayChange(Link link)
Notify link delay change

Parameters:
link -

notifyAddLsp

void notifyAddLsp(Lsp lsp)
Notify LSP add

Parameters:
lsp -

notifyRemoveLsp

void notifyRemoveLsp(Lsp lsp)
Notify LSP remove

Parameters:
lsp -

notifyRerouteLsp

void notifyRerouteLsp(Lsp lsp)
Notify the fact that a LSP must be rerouted.

Parameters:
lsp - The LSP to reroute.

notifyLspReservationChange

void notifyLspReservationChange(Lsp lsp)
Notify LSP reservation change

Parameters:
lsp -

notifyLspWorkingPathChange

void notifyLspWorkingPathChange(Lsp lsp)
Notify a change in the working path of the lsp

Parameters:
lsp -


Copyright © 2004-2007 Research Unit in Networking, All Rights Reserved.