Interface RoutingLogic

All Superinterfaces:
NoSerializationVerificationNeeded
All Known Implementing Classes:
AdaptiveLoadBalancingRoutingLogic, BroadcastRoutingLogic, ConsistentHashingRoutingLogic, RandomRoutingLogic, RoundRobinRoutingLogic, ScatterGatherFirstCompletedRoutingLogic, SmallestMailboxRoutingLogic, TailChoppingRoutingLogic

public interface RoutingLogic extends NoSerializationVerificationNeeded
The interface of the routing logic that is used in a Router to select destination routed messages.

The implementation must be thread safe.

  • Method Summary

    Modifier and Type
    Method
    Description
    select(Object message, scala.collection.immutable.IndexedSeq<Routee> routees)
    Pick the destination for a given message.
  • Method Details

    • select

      Routee select(Object message, scala.collection.immutable.IndexedSeq<Routee> routees)
      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 pekko.routing.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.