Class: Liebre::Runner::Starter::Resources::QueueBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/liebre/runner/starter/resources/queue_builder.rb

Instance Method Summary collapse

Constructor Details

#initialize(channel, config) ⇒ QueueBuilder

Returns a new instance of QueueBuilder.



7
8
9
10
# File 'lib/liebre/runner/starter/resources/queue_builder.rb', line 7

def initialize channel, config
  @channel = channel
  @config  = config
end

Instance Method Details

#exchangeObject



24
25
26
# File 'lib/liebre/runner/starter/resources/queue_builder.rb', line 24

def exchange
  Liebre::Common::Utils.create_exchange channel, exchange_config
end

#queueObject



12
13
14
15
16
17
18
19
20
21
22
# File 'lib/liebre/runner/starter/resources/queue_builder.rb', line 12

def queue
  q = channel.queue(queue_name, queue_opts)
  if routing_keys.any?
    routing_keys.each do |key|
      q.bind(exchange, bind_opts.merge(:routing_key => key))
    end
  else
    q.bind(exchange, bind_opts)
  end
  q
end