class Resque::Job

Public Class Methods

reserve(queue) click to toggle source
# File lib/resque/plugins/serial_queues/resque_extension.rb, line 5
def self.reserve(queue)
  return if queue=="*"
  return if is_serial_queue?(queue) and is_queue_locked?(queue)
  return if is_serial_queue?(queue) and Resque.peek(queue) and not lock_queue(queue)
  if payload = Resque.pop(queue)
    new(queue, payload)
  else
    unlock_queue(queue)
    nil
  end
rescue Exception => e
  unlock_queue(queue)
  nil
end

Protected Class Methods

is_queue_locked?(queue) click to toggle source
# File lib/resque/plugins/serial_queues/resque_extension.rb, line 25
def self.is_queue_locked?(queue)
  Resque::Plugins::SerialQueues.is_queue_locked?(queue)
end
is_serial_queue?(queue) click to toggle source
# File lib/resque/plugins/serial_queues/resque_extension.rb, line 21
def self.is_serial_queue?(queue)
  Resque::Plugins::SerialQueues.is_queue_serial?(queue)
end
lock_queue(queue) click to toggle source
# File lib/resque/plugins/serial_queues/resque_extension.rb, line 29
def self.lock_queue(queue)
  Resque::Plugins::SerialQueues.lock_queue(queue)
end
unlock_queue(queue) click to toggle source
# File lib/resque/plugins/serial_queues/resque_extension.rb, line 33
def self.unlock_queue(queue)
  Resque::Plugins::SerialQueues.unlock_queue(queue)
end