Class: Jobi::Consumers::Rabbitmq

Inherits:
Object
  • Object
show all
Defined in:
lib/jobi/consumers/rabbitmq.rb

Instance Method Summary collapse

Constructor Details

#initialize(queue:, ack:) ⇒ Rabbitmq



7
8
9
10
# File 'lib/jobi/consumers/rabbitmq.rb', line 7

def initialize(queue:, ack:)
  @queue = queue
  @ack = ack
end

Instance Method Details

#consume!Object



12
13
14
15
16
17
# File 'lib/jobi/consumers/rabbitmq.rb', line 12

def consume!
  @queue.subscribe(manual_ack: @ack) do |delivery_info, , payload|
    Jobi::Runner.new(payload: payload).run
    acknowledge!(delivery_info.delivery_tag) if @ack
  end
end