off_broadway_mqtt v0.1.0 OffBroadway.MQTT.Queue behaviour View Source

Implemens a inmemory queue to buffer incoming messages for a subscription from a MQTT broker.

Link to this section Summary

Types

Type for queue_names

Functions

Returns a specification to start this module under a supervisor.

Dequeues the demanded amount of messages from the given queue.

Enqueues the message.

Starts a queue with the given name.

Callbacks

Called by the Tortoise.Handler to enqueue incoming messages.

Called by the producer to dequeue messages.

Called by the producer to start a new queue. This usually receives a t:MQTT.queue_name/0 as argument.

Link to this section Types

Type for queue_names

Link to this section Functions

Returns a specification to start this module under a supervisor.

See Supervisor.

Link to this function

dequeue(queue_name, demand) View Source
dequeue(name(), non_neg_integer()) :: [any()]

Dequeues the demanded amount of messages from the given queue.

Link to this function

enqueue(queue_name, message) View Source
enqueue(name(), any()) :: :ok

Enqueues the message.

Link to this function

start_link(args) View Source
start_link([name() | OffBroadway.MQTT.Config.t() | {atom(), any()}, ...]) ::
  GenServer.on_start()

Starts a queue with the given name.

Link to this section Callbacks

Link to this callback

dequeue(name, non_neg_integer) View Source
dequeue(name(), non_neg_integer()) :: [any()]

Called by the Tortoise.Handler to enqueue incoming messages.

Link to this callback

enqueue(name, any) View Source
enqueue(name(), any()) :: :ok

Called by the producer to dequeue messages.

Called by the producer to start a new queue. This usually receives a t:MQTT.queue_name/0 as argument.