Module: Resque::FairShare::Reserve

Defined in:
lib/resque/fair_share/reserve.rb

Overview

Overrides Resque::Job.reserve to use fair-share dequeuing instead of LPOP. Prepended onto Resque::Job's singleton class on require.

Instance Method Summary collapse

Instance Method Details

#reserve(queue) ⇒ Object



6
7
8
9
10
11
12
13
14
15
# File 'lib/resque/fair_share/reserve.rb', line 6

def reserve(queue)
  if fair_share_active?(queue)
    payload = Resque::FairShare::Dequeue.perform(queue)
    return new(queue, payload) if payload

    nil
  else
    super
  end
end