module QueueingRabbit::JobExtensions::Threaded::ClassMethods

Public Instance Methods

create_monitor() click to toggle source
# File lib/queueing_rabbit/extensions/threaded.rb, line 50
def create_monitor
  Monitor.supervise_as(monitor_name)
end
monitor() click to toggle source
# File lib/queueing_rabbit/extensions/threaded.rb, line 45
def monitor
  create_monitor unless Celluloid::Actor[monitor_name]
  Celluloid::Actor[monitor_name]
end
monitor_name() click to toggle source
# File lib/queueing_rabbit/extensions/threaded.rb, line 54
def monitor_name
  :queueing_rabbit_monitor
end
perform(payload, metadata) click to toggle source
# File lib/queueing_rabbit/extensions/threaded.rb, line 39
def perform(payload, metadata)
  job = self.new(payload, metadata)
  monitor.link(job)
  job.async.perform_and_terminate
end