Class ActorSelection
- java.lang.Object
-
- org.apache.pekko.actor.ActorSelection
-
- All Implemented Interfaces:
java.io.Serializable
public abstract class ActorSelection extends java.lang.Object implements java.io.Serializable
An ActorSelection is a logical view of a section of an ActorSystem's tree of Actors, allowing for broadcasting of messages to that section.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ActorSelection()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected abstract ActorRef
anchor()
ActorPath
anchorPath()
Thepekko.actor.ActorPath
of the anchor actor.static ActorSelection
apply(ActorRef anchorRef, java.lang.String path)
Construct an ActorSelection from the given string representing a path relative to the given target.static ActorSelection
apply(ActorRef anchorRef, scala.collection.Iterable<java.lang.String> elements)
Construct an ActorSelection from the given string representing a path relative to the given target.boolean
equals(java.lang.Object obj)
void
forward(java.lang.Object message, ActorContext context)
Forwards the message and passes the original sender actor as the sender.int
hashCode()
protected abstract scala.collection.immutable.IndexedSeq<SelectionPathElement>
path()
java.lang.String
pathString()
String representation of the path elements, starting with "/" and separated with "/".java.util.concurrent.CompletionStage<ActorRef>
resolveOne(java.time.Duration timeout)
Java API forresolveOne(org.apache.pekko.util.Timeout)
scala.concurrent.Future<ActorRef>
resolveOne(Timeout timeout)
Resolve theActorRef
matching this selection.scala.concurrent.Future<ActorRef>
resolveOne(scala.concurrent.duration.FiniteDuration timeout)
Resolve theActorRef
matching this selection.java.util.concurrent.CompletionStage<ActorRef>
resolveOneCS(java.time.Duration timeout)
Deprecated.Use the overloaded method resolveOne which accepts java.time.Duration instead.java.util.concurrent.CompletionStage<ActorRef>
resolveOneCS(scala.concurrent.duration.FiniteDuration timeout)
Deprecated.Use the overloaded method resolveOne which accepts java.time.Duration instead.void
tell(java.lang.Object msg, ActorRef sender)
Sends the specified message to this ActorSelection, i.e.static ScalaActorSelection
toScala(ActorSelection sel)
java.lang.String
toSerializationFormat()
String representation of the actor selection suitable for storage and recreation.java.lang.String
toString()
-
-
-
Method Detail
-
toScala
public static ScalaActorSelection toScala(ActorSelection sel)
-
apply
public static ActorSelection apply(ActorRef anchorRef, java.lang.String path)
Construct an ActorSelection from the given string representing a path relative to the given target. This operation has to create all the matching magic, so it is preferable to cache its result if the intention is to send messages frequently.
-
apply
public static ActorSelection apply(ActorRef anchorRef, scala.collection.Iterable<java.lang.String> elements)
Construct an ActorSelection from the given string representing a path relative to the given target. This operation has to create all the matching magic, so it is preferable to cache its result if the intention is to send messages frequently.
-
anchor
protected abstract ActorRef anchor()
-
path
protected abstract scala.collection.immutable.IndexedSeq<SelectionPathElement> path()
-
tell
public void tell(java.lang.Object msg, ActorRef sender)
Sends the specified message to this ActorSelection, i.e. fire-and-forget semantics, including the sender reference if possible.Pass
ActorRef.noSender()
ornull
as sender if there is nobody to reply to
-
forward
public void forward(java.lang.Object message, ActorContext context)
Forwards the message and passes the original sender actor as the sender.Works, no matter whether originally sent with tell/'!' or ask/'?'.
-
resolveOne
public scala.concurrent.Future<ActorRef> resolveOne(Timeout timeout)
Resolve theActorRef
matching this selection. The result is returned as a Future that is completed with theActorRef
if such an actor exists. It is completed with failureActorNotFound
if no such actor exists or the identification didn't complete within the suppliedtimeout
.Under the hood it talks to the actor to verify its existence and acquire its
ActorRef
.
-
resolveOne
public scala.concurrent.Future<ActorRef> resolveOne(scala.concurrent.duration.FiniteDuration timeout)
Resolve theActorRef
matching this selection. The result is returned as a Future that is completed with theActorRef
if such an actor exists. It is completed with failureActorNotFound
if no such actor exists or the identification didn't complete within the suppliedtimeout
.Under the hood it talks to the actor to verify its existence and acquire its
ActorRef
.
-
resolveOneCS
public java.util.concurrent.CompletionStage<ActorRef> resolveOneCS(scala.concurrent.duration.FiniteDuration timeout)
Deprecated.Use the overloaded method resolveOne which accepts java.time.Duration instead. Since Akka 2.5.20.Java API forresolveOne(org.apache.pekko.util.Timeout)
Resolve the
ActorRef
matching this selection. The result is returned as a CompletionStage that is completed with theActorRef
if such an actor exists. It is completed with failureActorNotFound
if no such actor exists or the identification didn't complete within the suppliedtimeout
.
-
resolveOneCS
public java.util.concurrent.CompletionStage<ActorRef> resolveOneCS(java.time.Duration timeout)
Deprecated.Use the overloaded method resolveOne which accepts java.time.Duration instead. Since Akka 2.5.20.Java API forresolveOne(org.apache.pekko.util.Timeout)
Resolve the
ActorRef
matching this selection. The result is returned as a CompletionStage that is completed with theActorRef
if such an actor exists. It is completed with failureActorNotFound
if no such actor exists or the identification didn't complete within the suppliedtimeout
.
-
resolveOne
public java.util.concurrent.CompletionStage<ActorRef> resolveOne(java.time.Duration timeout)
Java API forresolveOne(org.apache.pekko.util.Timeout)
Resolve the
ActorRef
matching this selection. The result is returned as a CompletionStage that is completed with theActorRef
if such an actor exists. It is completed with failureActorNotFound
if no such actor exists or the identification didn't complete within the suppliedtimeout
.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
anchorPath
public ActorPath anchorPath()
Thepekko.actor.ActorPath
of the anchor actor.
-
pathString
public java.lang.String pathString()
String representation of the path elements, starting with "/" and separated with "/".
-
toSerializationFormat
public java.lang.String toSerializationFormat()
String representation of the actor selection suitable for storage and recreation. The output is similar to the URI fragment returned bypekko.actor.ActorPath#toSerializationFormat
.- Returns:
- URI fragment
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
-