feat: Add exchange_name parameter to run_task method and update Rubocop configuration for parameter lists.

This commit is contained in:
Ari Karim 2026-01-18 11:04:42 +03:00
parent 4ac772d12c
commit d7c7415438
No known key found for this signature in database
GPG Key ID: 1A5559E2E32F1805
2 changed files with 5 additions and 2 deletions

View File

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

View File

@ -36,6 +36,7 @@ module RabbitCarrots
handler_class:, handler_class:,
routing_keys: channel[:routing_keys], routing_keys: channel[:routing_keys],
queue_arguments: channel[:arguments], queue_arguments: channel[:arguments],
exchange_name: channel[:exchange_name],
kill_to_restart_on_standard_error: kill_to_restart_on_standard_error:
) )
end end
@ -76,9 +77,9 @@ module RabbitCarrots
@running = false @running = false
end 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| 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}" logger.info "Listening on QUEUE: #{queue_name} for ROUTING KEYS: #{routing_keys}"
queue = channel.queue(queue_name, durable: true, arguments: queue_arguments) queue = channel.queue(queue_name, durable: true, arguments: queue_arguments)