schoolbus v0.0.2 Schoolbus

Manage multiple PubSub instances

Link to this section Summary

Link to this section Types

Link to this type

bus_id()

bus_id() :: atom()
Link to this type

bus_id_opt()

bus_id_opt() :: {:id, bus_id()}
Link to this type

partitions_opt()

partitions_opt() :: {:partitions, pos_integer()}
Link to this type

subscription()

subscription() :: {topic(), pid()}
Link to this type

topic()

topic() :: atom() | {atom(), atom()}
Link to this type

topic_match()

topic_match() :: topic() | {atom(), String.t()}
Link to this type

topics_opt()

topics_opt() :: {:topics, [topic()]}

Link to this section Functions

Link to this function

broadcast(topic, message, id \\ :default)

broadcast(topic(), term(), bus_id()) :: :ok
Link to this function

child_spec(opts)

child_spec(opts :: term()) :: Supervisor.child_spec()
Link to this function

register(topic, id \\ :default)

register(topic(), bus_id()) :: :ok
Link to this function

start_link(opts)

start_link([option()]) :: {:ok, pid()} | {:error, term()}
Link to this function

subscribe(topic)

subscribe(topic_match()) :: {:ok, [topic()]}
Link to this function

subscribe(topic, bus_id)

subscribe(topic_match(), bus_id()) :: {:ok, [topic()]}
Link to this function

subscribers(id \\ :default)

subscribers(bus_id()) :: [subscription()]
Link to this function

to_name(id)

to_name(bus_id()) :: atom()
Link to this function

topics(id \\ :default)

topics(bus_id()) :: [topic()]
Link to this function

unsubscribe(topic, id \\ :default)

unsubscribe(topic(), bus_id()) :: :ok