Class: RabbitJobs::Publisher::Sync
- Defined in:
- lib/rabbit_jobs/publisher/sync.rb
Overview
Synchronous publisher. Calls Job#perform with no RabbitMQ interaction.
Class Method Summary collapse
- .cleanup ⇒ Object
- .publish_to(routing_key, klass, *params) ⇒ Object
- .purge_queue(*routing_keys) ⇒ Object
- .queue_status(routing_key) ⇒ Object
Methods inherited from Base
Class Method Details
.cleanup ⇒ Object
9 10 |
# File 'lib/rabbit_jobs/publisher/sync.rb', line 9 def cleanup end |
.publish_to(routing_key, klass, *params) ⇒ Object
12 13 14 15 16 17 18 |
# File 'lib/rabbit_jobs/publisher/sync.rb', line 12 def publish_to(routing_key, klass, *params) fail ArgumentError, "klass=#{klass.inspect}" unless klass.is_a?(Class) || klass.is_a?(String) routing_key = routing_key.to_sym unless routing_key.is_a?(Symbol) fail ArgumentError, "routing_key=#{routing_key}" unless RabbitJobs.config[:queues][routing_key] klass.perform(*params) end |
.purge_queue(*routing_keys) ⇒ Object
20 21 22 |
# File 'lib/rabbit_jobs/publisher/sync.rb', line 20 def purge_queue(*routing_keys) fail ArgumentError unless routing_keys.present? end |
.queue_status(routing_key) ⇒ Object
24 25 26 27 |
# File 'lib/rabbit_jobs/publisher/sync.rb', line 24 def queue_status(routing_key) check_queue_status_params(routing_key) { message_count: 0, consumer_count: 0 } end |