trait ActorContext extends ActorRefFactory with ClassicActorContextProvider
The actor context - the view of the actor cell from the actor. Exposes contextual information for the actor and the current message.
There are several possibilities for creating actors (see akka.actor.Props
for details on props
):
// Java or Scala context.actorOf(props, "name") context.actorOf(props) // Scala context.actorOf(Props[MyActor]) context.actorOf(Props(classOf[MyActor], arg1, arg2), "name") // Java getContext().actorOf(Props.create(MyActor.class)); getContext().actorOf(Props.create(MyActor.class, arg1, arg2), "name");
Where no name is given explicitly, one will be automatically generated.
- Source
- ActorCell.scala
- Alphabetic
- By Inheritance
- ActorContext
- ClassicActorContextProvider
- ActorRefFactory
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Abstract Value Members
-
abstract
def
actorOf(props: Props, name: String): ActorRef
Create new actor as child of this context with the given name, which must not be null, empty or start with “$”.
Create new actor as child of this context with the given name, which must not be null, empty or start with “$”. If the given name is already in use, an
InvalidActorNameException
is thrown.See akka.actor.Props for details on how to obtain a
Props
object.- Definition Classes
- ActorRefFactory
- Exceptions thrown
UnsupportedOperationException
if invoked on an ActorSystem that uses a custom user guardianakka.ConfigurationException
if deployment, dispatcher or mailbox configuration is wrongakka.actor.InvalidActorNameException
if the given name is invalid or already in use
-
abstract
def
actorOf(props: Props): ActorRef
Create new actor as child of this context and give it an automatically generated name (currently similar to base64-encoded integer count, reversed and with “$” prepended, may change in the future).
Create new actor as child of this context and give it an automatically generated name (currently similar to base64-encoded integer count, reversed and with “$” prepended, may change in the future).
See akka.actor.Props for details on how to obtain a
Props
object.- Definition Classes
- ActorRefFactory
- Exceptions thrown
UnsupportedOperationException
if invoked on an ActorSystem that uses a custom user guardianakka.ConfigurationException
if deployment, dispatcher or mailbox configuration is wrong
-
abstract
def
become(behavior: Receive, discardOld: Boolean): Unit
Changes the Actor's behavior to become the new 'Receive' (PartialFunction[Any, Unit]) handler.
Changes the Actor's behavior to become the new 'Receive' (PartialFunction[Any, Unit]) handler. This method acts upon the behavior stack as follows:
- if
discardOld = true
it will replace the top element (i.e. the current behavior) - if
discardOld = false
it will keep the current behavior and push the given one atop
The default of replacing the current behavior on the stack has been chosen to avoid memory leaks in case client code is written without consulting this documentation first (i.e. always pushing new behaviors and never issuing an
unbecome()
)*Warning*: This method is not thread-safe and must not be accessed from threads other than the ordinary actor message processing thread, such as java.util.concurrent.CompletionStage and scala.concurrent.Future callbacks.
- if
-
abstract
def
child(name: String): Option[ActorRef]
Get the child with the given name if it exists.
Get the child with the given name if it exists.
*Warning*: This method is not thread-safe and must not be accessed from threads other than the ordinary actor message processing thread, such as java.util.concurrent.CompletionStage and scala.concurrent.Future callbacks.
-
abstract
def
children: Iterable[ActorRef]
Returns all supervised children; this method returns a view (i.e.
Returns all supervised children; this method returns a view (i.e. a lazy collection) onto the internal collection of children. Targeted lookups should be using
child
instead for performance reasons:val badLookup = context.children find (_.path.name == "kid") // should better be expressed as: val goodLookup = context.child("kid")
*Warning*: This method is not thread-safe and must not be accessed from threads other than the ordinary actor message processing thread, such as java.util.concurrent.CompletionStage and scala.concurrent.Future callbacks.
-
implicit abstract
def
dispatcher: ExecutionContextExecutor
Returns the dispatcher (MessageDispatcher) that is used for this Actor.
Returns the dispatcher (MessageDispatcher) that is used for this Actor. Importing this member will place an implicit ExecutionContext in scope.
This method is thread-safe and can be called from other threads than the ordinary actor message processing thread, such as java.util.concurrent.CompletionStage and scala.concurrent.Future callbacks.
- Definition Classes
- ActorContext → ActorRefFactory
-
abstract
def
guardian: InternalActorRef
Father of all children created by this interface.
Father of all children created by this interface.
INTERNAL API
- Attributes
- protected
- Definition Classes
- ActorRefFactory
-
abstract
def
lookupRoot: InternalActorRef
INTERNAL API
INTERNAL API
- Attributes
- protected
- Definition Classes
- ActorRefFactory
-
abstract
def
parent: ActorRef
Returns the supervising parent ActorRef.
Returns the supervising parent ActorRef.
This method is thread-safe and can be called from other threads than the ordinary actor message processing thread, such as java.util.concurrent.CompletionStage and scala.concurrent.Future callbacks.
-
abstract
def
props: Props
Retrieve the Props which were used to create this actor.
Retrieve the Props which were used to create this actor.
This method is thread-safe and can be called from other threads than the ordinary actor message processing thread, such as java.util.concurrent.CompletionStage and scala.concurrent.Future callbacks.
-
abstract
def
provider: ActorRefProvider
INTERNAL API
INTERNAL API
- Attributes
- protected
- Definition Classes
- ActorRefFactory
-
abstract
def
receiveTimeout: Duration
Gets the current receive timeout.
Gets the current receive timeout. When specified, the receive method should be able to handle a akka.actor.ReceiveTimeout message.
*Warning*: This method is not thread-safe and must not be accessed from threads other than the ordinary actor message processing thread, such as java.util.concurrent.CompletionStage and scala.concurrent.Future callbacks.
-
abstract
def
self: ActorRef
The ActorRef representing this actor
The ActorRef representing this actor
This method is thread-safe and can be called from other threads than the ordinary actor message processing thread, such as java.util.concurrent.CompletionStage and scala.concurrent.Future callbacks.
-
abstract
def
sender(): ActorRef
Returns the sender 'ActorRef' of the current message.
Returns the sender 'ActorRef' of the current message.
*Warning*: This method is not thread-safe and must not be accessed from threads other than the ordinary actor message processing thread, such as java.util.concurrent.CompletionStage and scala.concurrent.Future callbacks.
-
abstract
def
setReceiveTimeout(timeout: Duration): Unit
Defines the inactivity timeout after which the sending of a akka.actor.ReceiveTimeout message is triggered.
Defines the inactivity timeout after which the sending of a akka.actor.ReceiveTimeout message is triggered. When specified, the receive function should be able to handle a akka.actor.ReceiveTimeout message. 1 millisecond is the minimum supported timeout.
Please note that the receive timeout might fire and enqueue the
ReceiveTimeout
message right after another message was enqueued; hence it is not guaranteed that upon reception of the receive timeout there must have been an idle period beforehand as configured via this method.Once set, the receive timeout stays in effect (i.e. continues firing repeatedly after inactivity periods). Pass in
Duration.Undefined
to switch off this feature.Messages marked with NotInfluenceReceiveTimeout will not reset the timer. This can be useful when
ReceiveTimeout
should be fired by external inactivity but not influenced by internal activity, e.g. scheduled tick messages.*Warning*: This method is not thread-safe and must not be accessed from threads other than the ordinary actor message processing thread, such as java.util.concurrent.CompletionStage and scala.concurrent.Future callbacks.
-
abstract
def
stop(actor: ActorRef): Unit
Stop the actor pointed to by the given akka.actor.ActorRef; this is an asynchronous operation, i.e.
Stop the actor pointed to by the given akka.actor.ActorRef; this is an asynchronous operation, i.e. involves a message send. If this method is applied to the
self
reference from inside an Actor then that Actor is guaranteed to not process any further messages after this call; please note that the processing of the current message will continue, this method does not immediately terminate this actor.- Definition Classes
- ActorRefFactory
-
implicit abstract
def
system: ActorSystem
The system that the actor belongs to.
The system that the actor belongs to. Importing this member will place an implicit ActorSystem in scope.
This method is thread-safe and can be called from other threads than the ordinary actor message processing thread, such as java.util.concurrent.CompletionStage and scala.concurrent.Future callbacks.
-
abstract
def
systemImpl: ActorSystemImpl
INTERNAL API
INTERNAL API
- Attributes
- protected
- Definition Classes
- ActorRefFactory
-
abstract
def
unbecome(): Unit
Reverts the Actor behavior to the previous one on the behavior stack.
Reverts the Actor behavior to the previous one on the behavior stack.
*Warning*: This method is not thread-safe and must not be accessed from threads other than the ordinary actor message processing thread, such as java.util.concurrent.CompletionStage and scala.concurrent.Future callbacks.
-
abstract
def
unwatch(subject: ActorRef): ActorRef
Unregisters this actor as Monitor for the provided ActorRef.
Unregisters this actor as Monitor for the provided ActorRef.
- returns
the provided ActorRef *Warning*: This method is not thread-safe and must not be accessed from threads other than the ordinary actor message processing thread, such as java.util.concurrent.CompletionStage and scala.concurrent.Future callbacks.
-
abstract
def
watch(subject: ActorRef): ActorRef
Registers this actor as a Monitor for the provided ActorRef.
Registers this actor as a Monitor for the provided ActorRef. This actor will receive a Terminated(subject) message when watched actor is terminated.
watch
is idempotent if it is not mixed withwatchWith
.It will fail with an IllegalStateException if the same subject was watched before using
watchWith
. To clear the termination message, unwatch first.*Warning*: This method is not thread-safe and must not be accessed from threads other than the ordinary actor message processing thread, such as java.util.concurrent.CompletionStage and scala.concurrent.Future callbacks.
- returns
the provided ActorRef
-
abstract
def
watchWith(subject: ActorRef, msg: Any): ActorRef
Registers this actor as a Monitor for the provided ActorRef.
Registers this actor as a Monitor for the provided ActorRef. This actor will receive the specified message when watched actor is terminated.
watchWith
is idempotent if it is called with the samemsg
and not mixed withwatch
.It will fail with an IllegalStateException if the same subject was watched before using
watch
orwatchWith
with another termination message. To change the termination message, unwatch first.*Warning*: This method is not thread-safe and must not be accessed from threads other than the ordinary actor message processing thread, such as java.util.concurrent.CompletionStage and scala.concurrent.Future callbacks.
- returns
the provided ActorRef
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
def
+(other: String): String
- Implicit
- This member is added by an implicit conversion from ActorContext to any2stringadd[ActorContext] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
-
def
->[B](y: B): (ActorContext, B)
- Implicit
- This member is added by an implicit conversion from ActorContext to ArrowAssoc[ActorContext] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
actorSelection(path: ActorPath): ActorSelection
Construct an akka.actor.ActorSelection from the given path, which is parsed for wildcards (these are replaced by regular expressions internally).
Construct an akka.actor.ActorSelection from the given path, which is parsed for wildcards (these are replaced by regular expressions internally). No attempt is made to verify the existence of any part of the supplied path, it is recommended to send a message and gather the replies in order to resolve the matching set of actors.
- Definition Classes
- ActorRefFactory
-
def
actorSelection(path: String): ActorSelection
Construct an akka.actor.ActorSelection from the given path, which is parsed for wildcards (these are replaced by regular expressions internally).
Construct an akka.actor.ActorSelection from the given path, which is parsed for wildcards (these are replaced by regular expressions internally). No attempt is made to verify the existence of any part of the supplied path, it is recommended to send a message and gather the replies in order to resolve the matching set of actors.
- Definition Classes
- ActorRefFactory
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
become(behavior: Receive): Unit
Changes the Actor's behavior to become the new 'Receive' (PartialFunction[Any, Unit]) handler.
Changes the Actor's behavior to become the new 'Receive' (PartialFunction[Any, Unit]) handler. Replaces the current behavior on the top of the behavior stack.
*Warning*: This method is not thread-safe and must not be accessed from threads other than the ordinary actor message processing thread, such as java.util.concurrent.CompletionStage and scala.concurrent.Future callbacks.
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate() @throws( ... )
-
def
ensuring(cond: (ActorContext) ⇒ Boolean, msg: ⇒ Any): ActorContext
- Implicit
- This member is added by an implicit conversion from ActorContext to Ensuring[ActorContext] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: (ActorContext) ⇒ Boolean): ActorContext
- Implicit
- This member is added by an implicit conversion from ActorContext to Ensuring[ActorContext] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean, msg: ⇒ Any): ActorContext
- Implicit
- This member is added by an implicit conversion from ActorContext to Ensuring[ActorContext] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean): ActorContext
- Implicit
- This member is added by an implicit conversion from ActorContext to Ensuring[ActorContext] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from ActorContext to StringFormat[ActorContext] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
writeObject(o: ObjectOutputStream): Unit
ActorContexts shouldn't be Serializable
ActorContexts shouldn't be Serializable
- Attributes
- protected
-
def
→[B](y: B): (ActorContext, B)
- Implicit
- This member is added by an implicit conversion from ActorContext to ArrowAssoc[ActorContext] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc