Current section

Files

Jump to
rabbit_mq_ex lib __examples bookings application.ex
Raw

lib/__examples/bookings/application.ex

defmodule Bookings.Application do
alias MQ.Supervisor, as: MQSupervisor
alias Bookings.Producers.AirlineRequestProducer
alias Bookings.MessageProcessors.{
PlaceBookingMessageProcessor,
CancelBookingMessageProcessor
}
use Application
def start(_type, _args) do
opts = [
consumers: [
{PlaceBookingMessageProcessor,
queue: "airline_request_queue/*.place_booking/bookings_app"},
{CancelBookingMessageProcessor,
queue: "airline_request_queue/*.cancel_booking/bookings_app"}
],
producers: [
AirlineRequestProducer
]
]
children = [
{MQSupervisor, opts}
# ... add more children here
]
Supervisor.start_link(children, strategy: :one_for_one)
end
end