EventBroker.Registry (Anoma v0.25.0)

I am the Registry for the PubSub system.

I am the central registry of all the topic subscirptions and filters. I am responsible for spawning filter agents, (un)subscribing to them, and keeping track of relations between them.

Summary

Types

t()

I am the type of the Registry.

Functions

I am the type of the registered filters, matching a filter agent to its PID.

Returns a specification to start this module under a supervisor.

Callback implementation for GenServer.init/1.

Types

Link to this type

registered_filters()

@type registered_filters() :: %{required(EventBroker.filter_spec_list()) => pid()}
@type t() :: %EventBroker.Registry{
  registered_filters: registered_filters(),
  supervisor: atom()
}

I am the type of the Registry.

My main functionality is to keep track of all spawned filter actors.

Fields

  • :supervisor - The name of the dynamic supervisor launched on start.
  • :registered_filters - The map whose keys are a filter-spec dependency list and whose values are PID's of filter agents corresponding to said lists. Default: %{}

Functions

Link to this function

%EventBroker.Registry{}

(struct)

I am the type of the registered filters, matching a filter agent to its PID.

Link to this function

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

Callback implementation for GenServer.init/1.

Link to this function

start_link(args)