class MultiWorker::Adapters::QueueClassic

Public Class Methods

configure(base, opts={}) click to toggle source
# File lib/multi_worker/adapters/queue_classic.rb, line 4
def self.configure(base, opts={})
  base.class_eval do
    @queue = ::QC::Queue.new(opts[:queue])

    def self.perform(*args)
      self.new.perform(*args)
    end

    def self.perform_async(*args)
      @queue.enqueue("#{self}.perform", *args)
    end

    def perform_async(*args)
      self.class.perform_async(*args)
    end
  end
end
perform(*args) click to toggle source
# File lib/multi_worker/adapters/queue_classic.rb, line 8
def self.perform(*args)
  self.new.perform(*args)
end
perform_async(*args) click to toggle source
# File lib/multi_worker/adapters/queue_classic.rb, line 12
def self.perform_async(*args)
  @queue.enqueue("#{self}.perform", *args)
end
rake_task() click to toggle source
# File lib/multi_worker/adapters/queue_classic.rb, line 22
def self.rake_task
  require 'rake'
  require 'queue_classic/tasks'
  ::Rake::Task["qc:work"]
end

Public Instance Methods

perform_async(*args) click to toggle source
# File lib/multi_worker/adapters/queue_classic.rb, line 16
def perform_async(*args)
  self.class.perform_async(*args)
end