Merge pull request #14 from arikarim/multi-exchange-

feat: Add exchange_name parameter to run_task method and update Ruboc…
This commit is contained in:
Brusk Awat 2026-01-18 12:04:10 +03:00 committed by GitHub
commit 5d2e2df8d2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 7 additions and 4 deletions

View File

@ -112,3 +112,5 @@ Metrics/CyclomaticComplexity:
Max: 15
Metrics/PerceivedComplexity:
Max: 15
Metrics/ParameterLists:
Max: 6

View File

@ -1,7 +1,7 @@
PATH
remote: .
specs:
rabbit_carrots (1.0.6)
rabbit_carrots (1.1.0)
bunny (>= 2.22)
connection_pool (>= 2.4)

View File

@ -36,6 +36,7 @@ module RabbitCarrots
handler_class:,
routing_keys: channel[:routing_keys],
queue_arguments: channel[:arguments],
exchange_name: channel[:exchange_name],
kill_to_restart_on_standard_error:
)
end
@ -76,9 +77,9 @@ module RabbitCarrots
@running = false
end
def run_task(queue_name:, handler_class:, routing_keys:, queue_arguments: {}, kill_to_restart_on_standard_error: false)
def run_task(queue_name:, handler_class:, routing_keys:, queue_arguments: {}, exchange_name: nil, kill_to_restart_on_standard_error: false)
RabbitCarrots::Connection.instance.channel.with do |channel|
exchange = channel.topic(RabbitCarrots.configuration.rabbitmq_exchange_name, durable: true)
exchange = channel.topic(exchange_name || RabbitCarrots.configuration.rabbitmq_exchange_name, durable: true)
logger.info "Listening on QUEUE: #{queue_name} for ROUTING KEYS: #{routing_keys}"
queue = channel.queue(queue_name, durable: true, arguments: queue_arguments)

View File

@ -1,5 +1,5 @@
# frozen_string_literal: true
module RabbitCarrots
VERSION = '1.0.6'
VERSION = '1.1.0'
end