ist.palcom.routing
Class SimpleMulticastRoutingManager

java.lang.Object
  extended by ist.palcom.routing.RoutingManager
      extended by ist.palcom.routing.SimpleMulticastRoutingManager

public class SimpleMulticastRoutingManager
extends RoutingManager

Very simple multicst forwarder. This manager will forward all multicast messages received to the nodes reachable by its mediamanager and deliver the message to the thread the subscribe to the manager.


Field Summary
 
Fields inherited from class ist.palcom.routing.RoutingManager
manager, pubSubManager, recieverThread, registeredThreads, scheduler
 
Constructor Summary
SimpleMulticastRoutingManager(PalcomScheduler scheduler, MediaManager mediaManager, PubSubManager pubSubManager, URN deviceURN)
           
 
Method Summary
protected  void handleRoutingMessage(AbstractRoutingMessage message)
          Method that should be implemented to handle the different routing messages that the specific implementation of a routing manager can handle.
 void send(Message message)
           
 void send(Message message, URL receiverURL)
           
 boolean send(Message message, URN senderURN, Selector senderSelector, URN receiverURN, Selector receiverSelector)
           
 URL startReceiving(PalcomThread receivingThread)
          Starte receiving messages on the specified url.
protected  void startRouting()
           
 void stopReceiving(PalcomThread receiver)
          Remove a receiving thread from the list of receivers.
 
Methods inherited from class ist.palcom.routing.RoutingManager
getDefaultGroupAddresses, getDefaultUnicastURL, getRoutingSelector, getRoutingURN, startReceiving, startReceiving2, stop, stopReceiving, stopReceiving, stopReceiving
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, println, toString
 

Constructor Detail

SimpleMulticastRoutingManager

public SimpleMulticastRoutingManager(PalcomScheduler scheduler,
                                     MediaManager mediaManager,
                                     PubSubManager pubSubManager,
                                     URN deviceURN)
Method Detail

startReceiving

public URL startReceiving(PalcomThread receivingThread)
Starte receiving messages on the specified url. Messages will be delivered as events to the receiving thread.

Overrides:
startReceiving in class RoutingManager
Parameters:
url - - the url to receive messages on
receivingThread - - the thread that receives events when messages are received
Returns:
PalCom URL for sending messages here.

send

public boolean send(Message message,
                    URN senderURN,
                    Selector senderSelector,
                    URN receiverURN,
                    Selector receiverSelector)
Specified by:
send in class RoutingManager

stopReceiving

public void stopReceiving(PalcomThread receiver)
Remove a receiving thread from the list of receivers.

Overrides:
stopReceiving in class RoutingManager
Parameters:
receiver - - the receiver that dont want to receive messages anymore.

send

public void send(Message message)

handleRoutingMessage

protected void handleRoutingMessage(AbstractRoutingMessage message)
Description copied from class: RoutingManager
Method that should be implemented to handle the different routing messages that the specific implementation of a routing manager can handle.

Specified by:
handleRoutingMessage in class RoutingManager
Parameters:
message - - message send between the nodes in the network to update/establish routing.

startRouting

protected void startRouting()
Specified by:
startRouting in class RoutingManager

send

public void send(Message message,
                 URL receiverURL)
Specified by:
send in class RoutingManager