class Announce::Adapters::ShoryukenAdapter::Subscriber
Public Instance Methods
active_job?()
click to toggle source
# File lib/announce/adapters/shoryuken_adapter.rb, line 43 def active_job? defined?(::ActiveJob) && defined?(ActiveJob::QueueAdapters::ShoryukenAdapter) && ActiveJob::Base.queue_adapter == ActiveJob::QueueAdapters::ShoryukenAdapter end
register_class(worker_class)
click to toggle source
# File lib/announce/adapters/shoryuken_adapter.rb, line 33 def register_class(worker_class) if active_job? Class.new(AnnounceWorker).tap do |jc| jc.class_eval("def job_class; #{worker_class.name}; end") end else worker_class end end
subscribe(worker_class, subject, actions, options)
click to toggle source
# File lib/announce/adapters/shoryuken_adapter.rb, line 25 def subscribe(worker_class, subject, actions, options) Array(actions).each do |action| queue_name = Queue.name_for(subject, action) Shoryuken.register_worker(queue_name, register_class(worker_class)) Shoryuken.queues << queue_name end end