object Receptionist extends ExtensionId[Receptionist]

A Receptionist is an entry point into an Actor hierarchy where select Actors publish their identity together with the protocols that they implement. Other Actors need only know the Receptionist’s identity in order to be able to use the services of the registered Actors.

These are the messages (and the extension) for interacting with the receptionist. The receptionist is easiest accessed through the system: ActorSystem.receptionist

Source
Receptionist.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Receptionist
  2. ExtensionId
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. abstract class Command extends AnyRef

    The set of commands accepted by a Receptionist.

    The set of commands accepted by a Receptionist.

    Not for user Extension

    Annotations
    @DoNotInherit()
  2. trait Deregistered extends AnyRef

    Confirmation that the given no more associated with the ServiceKey in the local receptionist.

    Confirmation that the given no more associated with the ServiceKey in the local receptionist. Note that this does not guarantee that subscribers has yet seen that the service is deregistered.

    Not for user extension

    Annotations
    @DoNotInherit()
  3. trait Listing extends AnyRef

    Current listing of all Actors that implement the protocol given by the ServiceKey.

    Current listing of all Actors that implement the protocol given by the ServiceKey.

    You can use key.Listing for type-safe pattern matching.

    Not for user extension.

    Annotations
    @DoNotInherit()
  4. trait Registered extends AnyRef

    Confirmation that the given has been associated with the ServiceKey.

    Confirmation that the given has been associated with the ServiceKey.

    You can use key.Registered for type-safe pattern matching.

    Not for user extension

    Annotations
    @DoNotInherit()

Value Members

  1. final def apply(system: ActorSystem[_]): Receptionist

    Lookup or create an instance of the extension identified by this id.

    Lookup or create an instance of the extension identified by this id.

    Definition Classes
    ExtensionId
  2. def createExtension(system: ActorSystem[_]): Receptionist

    Create the extension, will be invoked at most one time per actor system where the extension is registered.

    Create the extension, will be invoked at most one time per actor system where the extension is registered.

    Definition Classes
    ExtensionId
  3. def deregister[T](key: ServiceKey[T], service: ActorRef[T], replyTo: [Deregistered]): Command

    Java API: A Deregister message with an actor that will get an ack that the service was unregistered

  4. def deregister[T](key: ServiceKey[T], service: ActorRef[T]): Command

    Java API: A Deregister message without Ack that the service was unregistered

  5. def deregistered[T](key: ServiceKey[T], serviceInstance: ActorRef[T]): Deregistered

    Java API: Sent by the receptionist, available here for easier testing

  6. final def equals(other: Any): Boolean
    Definition Classes
    ExtensionId → AnyRef → Any
  7. def find[T](key: ServiceKey[T], replyTo: [Listing]): Command

    Java API: Find message.

    Java API: Find message. Query the Receptionist for a list of all Actors implementing the given protocol at one point in time by sending this command to the Receptionist.ref.

  8. def get(system: ActorSystem[_]): Receptionist
  9. final def hashCode(): Int
    Definition Classes
    ExtensionId → AnyRef → Any
  10. def id: [Receptionist]

    Java API: The identifier of the extension

    Java API: The identifier of the extension

    Definition Classes
    ExtensionId
  11. def listing[T](key: ServiceKey[T], serviceInstances: [ActorRef[T]], allServiceInstances: [ActorRef[T]], servicesWereAddedOrRemoved: Boolean): Listing

    Java API: Sent by the receptionist, available here for easier testing

  12. def listing[T](key: ServiceKey[T], serviceInstances: [ActorRef[T]]): Listing

    Java API: Sent by the receptionist, available here for easier testing

  13. def register[T](key: ServiceKey[T], service: ActorRef[T], replyTo: [Registered]): Command

    Java API: A Register message with Ack that the service was registered.

    Java API: A Register message with Ack that the service was registered. Associate the given with the given by sending this command to the Receptionist.ref.

    Multiple registrations can be made for the same key. De-registration is implied by the end of the referenced Actor’s lifecycle, but it can also be explicitly deregistered before termination.

    Registration will be acknowledged with the Registered message to the given replyTo actor.

  14. def register[T](key: ServiceKey[T], service: ActorRef[T]): Command

    Java API: A Register message without Ack that the service was registered.

    Java API: A Register message without Ack that the service was registered. Associate the given with the given by sending this command to the Receptionist.ref.

    Multiple registrations can be made for the same key. De-registration is implied by the end of the referenced Actor’s lifecycle, but it can also be explicitly deregistered before termination.

  15. def registered[T](key: ServiceKey[T], serviceInstance: ActorRef[T]): Registered

    Java API: Sent by the receptionist, available here for easier testing

  16. def subscribe[T](key: ServiceKey[T], subscriber: [Listing]): Command

    Java API: Subscribe message.

    Java API: Subscribe message. The given actor to service updates when this command is sent to the . When the set of instances registered for the given key changes the subscriber will be sent a Listing with the new set of instances for that service.

    The subscription will be acknowledged by sending out a first Listing. The subscription automatically ends with the termination of the subscriber.

  17. object Deregister

    Remove association between the given and the given ServiceKey.

    Remove association between the given and the given ServiceKey.

    Deregistration can be acknowledged with the Deregistered message if the deregister message is created with a replyTo actor.

    Note that getting the Deregistered confirmation does not mean all service key subscribers has seen the fact that the actor has been deregistered yet (especially in a clustered context) so it will be possible that messages sent to the actor in the role of service provider arrive even after getting the confirmation.

  18. object Deregistered

    Sent by the receptionist, available here for easier testing

  19. object Find

    Find message.

    Find message. Query the Receptionist for a list of all Actors implementing the given protocol at one point in time by sending this command to the Receptionist.ref.

  20. object Listing

    Sent by the receptionist, available here for easier testing

  21. object Register

    Register message.

    Register message. Associate the given with the given by sending this command to the Receptionist.ref.

    Multiple registrations can be made for the same key. De-registration is implied by the end of the referenced Actor’s lifecycle, but it can also be explicitly deregistered before termination.

    Registration will be acknowledged with the Registered message to the given replyTo actor if there is one.

  22. object Registered

    Sent by the receptionist, available here for easier testing

  23. object Subscribe

    Subscribe message.

    Subscribe message. The given actor will subscribe to service updates when this command is sent to the . When the set of instances registered for the given key changes the subscriber will be sent a Listing with the new set of instances for that service.

    The subscription will be acknowledged by sending out a first Listing. The subscription automatically ends with the termination of the subscriber.