Packages

Simple API for spawning RabbitMQ Producers and Consumers.

Current section

Files

Jump to
rbmq lib rbmq.ex
Raw

lib/rbmq.ex

defmodule Rbmq do
@moduledoc """
Module for simple usage of the Rbmq library
"""
@doc """
Start Supervisor for Consumers
"""
defdelegate start_consumer_supervisor, to: Rbmq.SupervisorConsumer, as: :start_link
@doc """
Start Supervisor for Producers
"""
defdelegate start_producer_supervisor, to: Rbmq.SupervisorProducer, as: :start_link
@doc """
Spawn new process with Consumer
"""
defdelegate spawn_consumer(name, queue, callback, exchange \\ nil), to: Rbmq.SupervisorConsumer
@doc """
Spawn new process with Producer
"""
defdelegate spawn_producer(name, queue, prefetch_count \\ nil, exchange \\ nil), to: Rbmq.SupervisorProducer
@doc """
Publish message into queue.
Producer with specified queue must already be started
"""
defdelegate publish(name, queue, data), to: Rbmq.Producer
@doc """
Get queue status.
Consumer with specified queue must already be started
"""
defdelegate status(name, queue), to: Rbmq.Consumer
@doc """
Get message from queue.
Consumer with specified queue must already be started
"""
defdelegate get(name, queue), to: Rbmq.Consumer
end