Package org.apache.pekko.routing
Class ScatterGatherFirstCompletedGroup
- java.lang.Object
-
- org.apache.pekko.routing.ScatterGatherFirstCompletedGroup
-
- All Implemented Interfaces:
java.io.Serializable
,Group
,RouterConfig
,scala.Equals
,scala.Product
public final class ScatterGatherFirstCompletedGroup extends java.lang.Object implements Group, scala.Product, java.io.Serializable
A router group that broadcasts the message to all routees, and replies with the first response.The configuration parameter trumps the constructor arguments. This means that if you provide
paths
during instantiation they will be ignored if the router is defined in the configuration file for the actor being used.param: paths string representation of the actor paths of the routees, messages are sent with
pekko.actor.ActorSelection
to these pathsparam: within expecting at least one reply within this duration, otherwise it will reply with
pekko.pattern.AskTimeoutException
in apekko.actor.Status.Failure
param: routerDispatcher dispatcher to use for the router head actor, which handles router management messages
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ScatterGatherFirstCompletedGroup(com.typesafe.config.Config config)
ScatterGatherFirstCompletedGroup(java.lang.Iterable<java.lang.String> routeePaths, java.time.Duration within)
Java APIScatterGatherFirstCompletedGroup(java.lang.Iterable<java.lang.String> routeePaths, scala.concurrent.duration.FiniteDuration within)
Java APIScatterGatherFirstCompletedGroup(scala.collection.immutable.Iterable<java.lang.String> paths, scala.concurrent.duration.FiniteDuration within, java.lang.String routerDispatcher)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static java.lang.String
$lessinit$greater$default$3()
static ScatterGatherFirstCompletedGroup
apply(scala.collection.immutable.Iterable<java.lang.String> paths, scala.concurrent.duration.FiniteDuration within, java.lang.String routerDispatcher)
static java.lang.String
apply$default$3()
boolean
canEqual(java.lang.Object x$1)
ScatterGatherFirstCompletedGroup
copy(scala.collection.immutable.Iterable<java.lang.String> paths, scala.concurrent.duration.FiniteDuration within, java.lang.String routerDispatcher)
scala.collection.immutable.Iterable<java.lang.String>
copy$default$1()
scala.concurrent.duration.FiniteDuration
copy$default$2()
java.lang.String
copy$default$3()
Router
createRouter(ActorSystem system)
Create the actual router, responsible for routing messages to routees.boolean
equals(java.lang.Object x$1)
int
hashCode()
scala.collection.immutable.Iterable<java.lang.String>
paths()
scala.collection.immutable.Iterable<java.lang.String>
paths(ActorSystem system)
int
productArity()
java.lang.Object
productElement(int x$1)
java.lang.String
productElementName(int x$1)
scala.collection.Iterator<java.lang.Object>
productIterator()
java.lang.String
productPrefix()
java.lang.String
routerDispatcher()
Dispatcher ID to use for running the “head” actor, which handles supervision, death watch and router management messagesjava.lang.String
toString()
static scala.Option<scala.Tuple3<scala.collection.immutable.Iterable<java.lang.String>,scala.concurrent.duration.FiniteDuration,java.lang.String>>
unapply(ScatterGatherFirstCompletedGroup x$0)
ScatterGatherFirstCompletedGroup
withDispatcher(java.lang.String dispatcherId)
Setting the dispatcher to be used for the router head actor, which handles router management messagesscala.concurrent.duration.FiniteDuration
within()
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.pekko.routing.Group
createRouterActor, props, routeeFor
-
Methods inherited from interface org.apache.pekko.routing.RouterConfig
isManagementMessage, routingLogicController, stopRouterWhenAllRouteesRemoved, verifyConfig, withFallback
-
-
-
-
Constructor Detail
-
ScatterGatherFirstCompletedGroup
public ScatterGatherFirstCompletedGroup(scala.collection.immutable.Iterable<java.lang.String> paths, scala.concurrent.duration.FiniteDuration within, java.lang.String routerDispatcher)
-
ScatterGatherFirstCompletedGroup
public ScatterGatherFirstCompletedGroup(com.typesafe.config.Config config)
-
ScatterGatherFirstCompletedGroup
public ScatterGatherFirstCompletedGroup(java.lang.Iterable<java.lang.String> routeePaths, scala.concurrent.duration.FiniteDuration within)
Java API- Parameters:
routeePaths
- string representation of the actor paths of the routees, messages are sent withpekko.actor.ActorSelection
to these pathswithin
- expecting at least one reply within this duration, otherwise it will reply withpekko.pattern.AskTimeoutException
in apekko.actor.Status.Failure
-
ScatterGatherFirstCompletedGroup
public ScatterGatherFirstCompletedGroup(java.lang.Iterable<java.lang.String> routeePaths, java.time.Duration within)
Java API- Parameters:
routeePaths
- string representation of the actor paths of the routees, messages are sent withpekko.actor.ActorSelection
to these pathswithin
- expecting at least one reply within this duration, otherwise it will reply withpekko.pattern.AskTimeoutException
in apekko.actor.Status.Failure
-
-
Method Detail
-
$lessinit$greater$default$3
public static java.lang.String $lessinit$greater$default$3()
-
apply
public static ScatterGatherFirstCompletedGroup apply(scala.collection.immutable.Iterable<java.lang.String> paths, scala.concurrent.duration.FiniteDuration within, java.lang.String routerDispatcher)
-
apply$default$3
public static java.lang.String apply$default$3()
-
unapply
public static scala.Option<scala.Tuple3<scala.collection.immutable.Iterable<java.lang.String>,scala.concurrent.duration.FiniteDuration,java.lang.String>> unapply(ScatterGatherFirstCompletedGroup x$0)
-
paths
public scala.collection.immutable.Iterable<java.lang.String> paths()
-
within
public scala.concurrent.duration.FiniteDuration within()
-
routerDispatcher
public java.lang.String routerDispatcher()
Description copied from interface:RouterConfig
Dispatcher ID to use for running the “head” actor, which handles supervision, death watch and router management messages- Specified by:
routerDispatcher
in interfaceRouterConfig
-
paths
public scala.collection.immutable.Iterable<java.lang.String> paths(ActorSystem system)
-
createRouter
public Router createRouter(ActorSystem system)
Description copied from interface:RouterConfig
Create the actual router, responsible for routing messages to routees.- Specified by:
createRouter
in interfaceRouterConfig
- Parameters:
system
- the ActorSystem this router belongs to
-
withDispatcher
public ScatterGatherFirstCompletedGroup withDispatcher(java.lang.String dispatcherId)
Setting the dispatcher to be used for the router head actor, which handles router management messages
-
copy
public ScatterGatherFirstCompletedGroup copy(scala.collection.immutable.Iterable<java.lang.String> paths, scala.concurrent.duration.FiniteDuration within, java.lang.String routerDispatcher)
-
copy$default$1
public scala.collection.immutable.Iterable<java.lang.String> copy$default$1()
-
copy$default$2
public scala.concurrent.duration.FiniteDuration copy$default$2()
-
copy$default$3
public java.lang.String copy$default$3()
-
productPrefix
public java.lang.String productPrefix()
- Specified by:
productPrefix
in interfacescala.Product
-
productArity
public int productArity()
- Specified by:
productArity
in interfacescala.Product
-
productElement
public java.lang.Object productElement(int x$1)
- Specified by:
productElement
in interfacescala.Product
-
productIterator
public scala.collection.Iterator<java.lang.Object> productIterator()
- Specified by:
productIterator
in interfacescala.Product
-
canEqual
public boolean canEqual(java.lang.Object x$1)
- Specified by:
canEqual
in interfacescala.Equals
-
productElementName
public java.lang.String productElementName(int x$1)
- Specified by:
productElementName
in interfacescala.Product
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object x$1)
- Specified by:
equals
in interfacescala.Equals
- Overrides:
equals
in classjava.lang.Object
-
-