Class: LontaraUtilities::RMQ::Server::Subscriber
- Inherits:
-
Object
- Object
- LontaraUtilities::RMQ::Server::Subscriber
- Defined in:
- lib/lontara_utilities/rmq/server/subscriber.rb
Overview
Server for AMQ on Direct Pattern
Instance Method Summary collapse
-
#initialize(connection, queue:) ⇒ Subscriber
constructor
A new instance of Subscriber.
-
#start ⇒ Object
Start consuming the queue and process the request.
Constructor Details
#initialize(connection, queue:) ⇒ Subscriber
Returns a new instance of Subscriber.
8 9 10 11 |
# File 'lib/lontara_utilities/rmq/server/subscriber.rb', line 8 def initialize(connection, queue:) @channel = connection.channel @queue = channel.queue(queue, durable: true) end |
Instance Method Details
#start ⇒ Object
Start consuming the queue and process the request.
14 15 16 17 18 19 20 21 22 |
# File 'lib/lontara_utilities/rmq/server/subscriber.rb', line 14 def start queue.subscribe(manual_ack: true) do |delivery_info, _, body| @request = JSON.parse(body, symbolize_names: true) channel.ack(delivery_info.delivery_tag) process_request end end |