object Adapter
Java API: Adapters between typed and untyped actors and actor systems.
The underlying ActorSystem
is the untyped akka.actor.ActorSystem
which runs Akka Typed akka.actor.typed.Behavior on an emulation layer. In this
system typed and untyped actors can coexist.
These methods make it possible to create typed child actor from untyped
parent actor, and the opposite untyped child from typed parent.
watch
is also supported in both directions.
There are also converters (toTyped
, toUntyped
) between untyped
akka.actor.ActorRef and typed akka.actor.typed.ActorRef, and between untyped
akka.actor.ActorSystem and typed akka.actor.typed.ActorSystem.
- Source
- Adapter.scala
- Alphabetic
- By Inheritance
- Adapter
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
- def actorOf(ctx: ActorContext[_], props: actor.Props, name: String): actor.ActorRef
- def actorOf(ctx: ActorContext[_], props: actor.Props): actor.ActorRef
-
def
props[T](behavior: Creator[Behavior[T]]): actor.Props
Wrap akka.actor.typed.Behavior in an untyped akka.actor.Props, i.e.
Wrap akka.actor.typed.Behavior in an untyped akka.actor.Props, i.e. when spawning a typed child actor from an untyped parent actor. This is normally not needed because you can use the extension methods
spawn
andspawnAnonymous
with an untypedActorContext
, but it's needed when using typed actors with an existing library/tool that provides an API that takes an untyped akka.actor.Props parameter. Cluster Sharding is an example of that. -
def
props[T](behavior: Creator[Behavior[T]], deploy: Props): actor.Props
Wrap akka.actor.typed.Behavior in an untyped akka.actor.Props, i.e.
Wrap akka.actor.typed.Behavior in an untyped akka.actor.Props, i.e. when spawning a typed child actor from an untyped parent actor. This is normally not needed because you can use the extension methods
spawn
andspawnAnonymous
with an untypedActorContext
, but it's needed when using typed actors with an existing library/tool that provides an API that takes an untyped akka.actor.Props parameter. Cluster Sharding is an example of that. - def spawn[T](ctx: actor.ActorContext, behavior: Behavior[T], name: String, props: Props): ActorRef[T]
- def spawn[T](ctx: actor.ActorContext, behavior: Behavior[T], name: String): ActorRef[T]
- def spawn[T](sys: actor.ActorSystem, behavior: Behavior[T], name: String, props: Props): ActorRef[T]
- def spawn[T](sys: actor.ActorSystem, behavior: Behavior[T], name: String): ActorRef[T]
- def spawnAnonymous[T](ctx: actor.ActorContext, behavior: Behavior[T], props: Props): ActorRef[T]
- def spawnAnonymous[T](ctx: actor.ActorContext, behavior: Behavior[T]): ActorRef[T]
- def spawnAnonymous[T](sys: actor.ActorSystem, behavior: Behavior[T], props: Props): ActorRef[T]
- def spawnAnonymous[T](sys: actor.ActorSystem, behavior: Behavior[T]): ActorRef[T]
- def stop(ctx: ActorContext[_], child: actor.ActorRef): Unit
- def stop(ctx: actor.ActorContext, child: ActorRef[_]): Unit
- def toTyped[T](ref: actor.ActorRef): ActorRef[T]
- def toTyped(sys: actor.ActorSystem): ActorSystem[Void]
- def toUntyped(ref: ActorRef[_]): actor.ActorRef
- def toUntyped(ctx: ActorContext[_]): actor.ActorContext
- def toUntyped(sys: ActorSystem[_]): actor.ActorSystem
- def unwatch[U](ctx: ActorContext[_], other: actor.ActorRef): Unit
- def unwatch[U](ctx: actor.ActorContext, other: ActorRef[U]): Unit
- def watch[U](ctx: ActorContext[_], other: actor.ActorRef): Unit
- def watch[U](ctx: actor.ActorContext, other: ActorRef[U]): Unit