org.jgroups.protocols
Class OLSR

java.lang.Object
  extended by org.jgroups.stack.Protocol
      extended by org.jgroups.protocols.OLSR
All Implemented Interfaces:
OLSRMessageSender, OLSRMessageUpper

public class OLSR
extends org.jgroups.stack.Protocol
implements OLSRMessageSender, OLSRMessageUpper

Author:
Gerard Paris Aixala

Field Summary
 
Fields inherited from class org.jgroups.stack.Protocol
down_prot, log, props, stack, stats, up_prot
 
Constructor Summary
OLSR()
           
 
Method Summary
 java.lang.Object down(org.jgroups.Event evt)
          An event is to be sent down the stack.
 java.lang.String getName()
           
 java.lang.Object passUpdateEvent(NetworkGraph<OLSRNode,Weight> networkGraph, RoutingTable routingTable)
          Passes an update (VIEW_CHANGE) event up to the stack
 java.lang.Object sendControlMessage(org.jgroups.Message msg)
          Sends an OLSR control message.
 java.lang.Object sendDataMessage(org.jgroups.Message msg, OLSRNode finalDest, java.lang.String mcast_addr_name)
          Sends an OLSR data message.
 java.lang.Object sendMessageUp(org.jgroups.Message msg)
          Creates a new event with the message and sends a the message up in this protocol stack
 boolean setProperties(java.util.Properties props)
           
 void start()
           
 void stop()
           
 java.lang.Object up(org.jgroups.Event evt)
          An event was received from the layer below.
 
Methods inherited from class org.jgroups.stack.Protocol
destroy, downThreadEnabled, dumpStats, enableStats, getDownProtocol, getProperties, getUpProtocol, init, printStats, providedDownServices, providedUpServices, requiredDownServices, requiredUpServices, resetStats, setDownProtocol, setPropertiesInternal, setProtocolStack, setUpProtocol, statsEnabled, upThreadEnabled
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OLSR

public OLSR()
Method Detail

down

public java.lang.Object down(org.jgroups.Event evt)
An event is to be sent down the stack. The layer may want to examine its type and perform some action on it, depending on the event's type. If the event is a message MSG, then the layer may need to add a header to it (or do nothing at all) before sending it down the stack using down_prot.down(). In case of a GET_ADDRESS event (which tries to retrieve the stack's address from one of the bottom layers), the layer may need to send a new response event back up the stack using up_prot.up().

Overrides:
down in class org.jgroups.stack.Protocol

getName

public java.lang.String getName()
Specified by:
getName in class org.jgroups.stack.Protocol

passUpdateEvent

public java.lang.Object passUpdateEvent(NetworkGraph<OLSRNode,Weight> networkGraph,
                                        RoutingTable routingTable)
Passes an update (VIEW_CHANGE) event up to the stack

Specified by:
passUpdateEvent in interface OLSRMessageUpper

sendControlMessage

public java.lang.Object sendControlMessage(org.jgroups.Message msg)
Description copied from interface: OLSRMessageSender
Sends an OLSR control message. The implementation of this method must attach the corresponding OLSRHeader to the message

Specified by:
sendControlMessage in interface OLSRMessageSender

sendDataMessage

public java.lang.Object sendDataMessage(org.jgroups.Message msg,
                                        OLSRNode finalDest,
                                        java.lang.String mcast_addr_name)
Description copied from interface: OLSRMessageSender
Sends an OLSR data message. The implementation of this method must attach the corresponding OLSRHeader to the message

Specified by:
sendDataMessage in interface OLSRMessageSender
Parameters:
msg - The message including the next hop address as the destination address
finalDest - The final destination of the message

sendMessageUp

public java.lang.Object sendMessageUp(org.jgroups.Message msg)
Creates a new event with the message and sends a the message up in this protocol stack

Specified by:
sendMessageUp in interface OLSRMessageUpper

setProperties

public boolean setProperties(java.util.Properties props)
Overrides:
setProperties in class org.jgroups.stack.Protocol

start

public void start()
           throws java.lang.Exception
Overrides:
start in class org.jgroups.stack.Protocol
Throws:
java.lang.Exception

stop

public void stop()
Overrides:
stop in class org.jgroups.stack.Protocol

up

public java.lang.Object up(org.jgroups.Event evt)
An event was received from the layer below. Usually the current layer will want to examine the event type and - depending on its type - perform some computation (e.g. removing headers from a MSG event type, or updating the internal membership list when receiving a VIEW_CHANGE event). Finally the event is either a) discarded, or b) an event is sent down the stack using down_prot.down() or c) the event (or another event) is sent up the stack using up_prot.up().

Overrides:
up in class org.jgroups.stack.Protocol