Class: Freddy::Consumers::TapIntoConsumer

Inherits:
Object
  • Object
show all
Defined in:
lib/freddy/consumers/tap_into_consumer.rb

Instance Method Summary collapse

Constructor Details

#initialize(consume_thread_pool, logger) ⇒ TapIntoConsumer

Returns a new instance of TapIntoConsumer.



4
5
6
7
# File 'lib/freddy/consumers/tap_into_consumer.rb', line 4

def initialize(consume_thread_pool, logger)
  @logger = logger
  @consume_thread_pool = consume_thread_pool
end

Instance Method Details

#consume(pattern, channel, &block) ⇒ Object



9
10
11
12
13
14
15
16
17
# File 'lib/freddy/consumers/tap_into_consumer.rb', line 9

def consume(pattern, channel, &block)
  queue = create_queue(pattern, channel)

  consumer = queue.subscribe do |delivery|
    process_message(queue, delivery, &block)
  end

  ResponderHandler.new(consumer, @consume_thread_pool)
end