View Source Actors (spawn v1.4.3)

Actors It's the client API for the Spawn actors. Through this module we interact with the actors by creating, invoking or configuring them.

Summary

Functions

Makes a request to an actor.

Makes a request to an actor using Nats broker.

Performs a liveness check for a given actor.

Performs a readiness check for a given actor.

Registers all actors defined in HostActor.

Spawn actors defined in HostActor.

Functions

@spec get_state(Eigr.Functions.Protocol.Actors.ActorId.t()) ::
  {:ok, term()} | {:error, term()}

See Actors.Actor.CallerProducer.get_state/1.

Link to this function

invoke(request, opts \\ [])

View Source

Makes a request to an actor.

  • request - The InvocationRequest
  • opts - The options to Invoke Actors ##
Link to this function

invoke_with_nats(request, opts \\ [])

View Source
@spec invoke_with_nats(Eigr.Functions.Protocol.InvocationRequest.t(), Keyword.t()) ::
  {:ok, :async} | {:ok, term()} | {:error, term()}

Makes a request to an actor using Nats broker.

  • request - The InvocationRequest
  • opts - The options to Invoke Actors ##
@spec liveness(Eigr.Functions.Protocol.Actors.ActorId.t()) ::
  {:ok, term()} | {:error, term()}

Performs a liveness check for a given actor.

Parameters

  • actor_id (ActorId.t()): The ID of the actor.
  • opts (any): Additional options.

Returns

  • {:ok, response}: If the response is successfully.
  • {:error, reason}: If an error occurs during the operation.
@spec readiness(Eigr.Functions.Protocol.Actors.ActorId.t()) ::
  {:ok, term()} | {:error, term()}

Performs a readiness check for a given actor.

Parameters

  • actor_id (ActorId.t()): The ID of the actor.
  • opts (any): Additional options.

Returns

  • {:ok, response}: If the response is successfully.
  • {:error, reason}: If an error occurs during the operation.
Link to this function

register(registration, opts \\ [])

View Source
@spec register(Eigr.Functions.Protocol.RegistrationRequest.t(), any()) ::
  {:ok, Eigr.Functions.Protocol.RegistrationResponse.t()}
  | {:error, Eigr.Functions.Protocol.RegistrationResponse.t()}

Registers all actors defined in HostActor.

  • registration - The RegistrationRequest
  • opts - The options to create Actors ##
Link to this function

spawn_actor(spawn, opts \\ [])

View Source
@spec spawn_actor(Eigr.Functions.Protocol.SpawnRequest.t(), any()) ::
  {:ok, Eigr.Functions.Protocol.SpawnResponse.t()}

Spawn actors defined in HostActor.

  • registration - The SpawnRequest
  • opts - The options to create Actors

spawn_actor must be used when you want to create a concrete instance of an actor previously registered as unnamed. That is, when an Actorid is associated with an actor of unnamed type. This function only registers the metadata of the new actor, not activating it. This will occur when the sprite is first invoked. ##