Create the actual router, responsible for routing messages to routees.
Create the actual router, responsible for routing messages to routees.
the ActorSystem this router belongs to
Is the message handled by the router head actor or the #routingLogicController actor.
Is the message handled by the router head actor or the #routingLogicController actor.
Initial number of routee instances
Initial number of routee instances
akka.actor.Props for a group router based on the settings defined by this instance.
akka.actor.Props for a pool router based on the settings defined by this instance and the supplied akka.actor.Props for the routees created by the router.
akka.actor.Props for a pool router based on the settings defined by this instance and the supplied akka.actor.Props for the routees created by the router.
Pool with dynamically resizable number of routees return the akka.routing.Resizer to use.
Pool with dynamically resizable number of routees return the akka.routing.Resizer to use. The resizer is invoked once when the router is created, before any messages can be sent to it. Resize is also triggered when messages are sent to the routees, and the resizer is invoked asynchronously, i.e. not necessarily before the message has been sent.
Dispatcher ID to use for running the “head” actor, which handles supervision, death watch and router management messages
Dispatcher ID to use for running the “head” actor, which handles supervision, death watch and router management messages
Possibility to define an actor for controlling the routing logic from external stimuli (e.g.
Possibility to define an actor for controlling the routing logic from external stimuli (e.g. monitoring metrics). This actor will be a child of the router "head" actor. Managment messages not handled by the "head" actor are delegated to this controller actor.
SupervisorStrategy for the head actor, i.e.
SupervisorStrategy for the head actor, i.e. for supervising the routees of the pool.
Use a dedicated dispatcher for the routees of the pool.
Use a dedicated dispatcher for the routees of the pool. The dispatcher is defined in 'pool-dispatcher' configuration property in the deployment section of the router.
Check that everything is there which is needed.
Check that everything is there which is needed. Called in constructor of RoutedActorRef to fail early.
Setting the dispatcher to be used for the router head actor, which handles supervision, death watch and router management messages.
Overridable merge strategy, by default completely prefers this
(i.e.
Overridable merge strategy, by default completely prefers this
(i.e. no merge).
Setting the resizer to be used.
Setting the supervisor strategy to be used for the “head” Router actor.
Java API: Router configuration which has no default, i.e. external configuration is required.
This can be used when the dispatcher to be used for the head Router needs to be configured (defaults to default-dispatcher).