akka.routing
Class RoundRobinRoutingLogic

java.lang.Object
  extended by akka.routing.RoundRobinRoutingLogic
All Implemented Interfaces:
NoSerializationVerificationNeeded, RoutingLogic

public final class RoundRobinRoutingLogic
extends java.lang.Object
implements RoutingLogic

Uses round-robin to select a routee. For concurrent calls, round robin is just a best effort.


Constructor Summary
RoundRobinRoutingLogic()
           
 
Method Summary
static RoundRobinRoutingLogic apply()
           
 java.util.concurrent.atomic.AtomicLong next()
           
 Routee select(java.lang.Object message, scala.collection.immutable.IndexedSeq<Routee> routees)
          Pick the destination for a given message.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RoundRobinRoutingLogic

public RoundRobinRoutingLogic()
Method Detail

apply

public static RoundRobinRoutingLogic apply()

next

public java.util.concurrent.atomic.AtomicLong next()

select

public Routee select(java.lang.Object message,
                     scala.collection.immutable.IndexedSeq<Routee> routees)
Description copied from interface: RoutingLogic
Pick the destination for a given message. Normally it picks one of the passed routees, but in the end it is up to the implementation to return whatever Routee to use for sending a specific message.

When implemented from Java it can be good to know that routees.apply(index) can be used to get an element from the IndexedSeq.

Specified by:
select in interface RoutingLogic
Parameters:
message - (undocumented)
routees - (undocumented)
Returns:
(undocumented)