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