Class: Qless::JobReservers::Ordered

Inherits:
Object
  • Object
show all
Defined in:
lib/qless/job_reservers/ordered.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(queues) ⇒ Ordered

Returns a new instance of Ordered.



6
7
8
# File 'lib/qless/job_reservers/ordered.rb', line 6

def initialize(queues)
  @queues = queues
end

Instance Attribute Details

#queuesObject (readonly)

Returns the value of attribute queues.



4
5
6
# File 'lib/qless/job_reservers/ordered.rb', line 4

def queues
  @queues
end

Instance Method Details

#descriptionObject



18
19
20
# File 'lib/qless/job_reservers/ordered.rb', line 18

def description
  @description ||= @queues.map(&:name).join(', ') + " (ordered)"
end

#reserveObject



10
11
12
13
14
15
16
# File 'lib/qless/job_reservers/ordered.rb', line 10

def reserve
  @queues.each do |q|
    job = q.pop
    return job if job
  end
  nil
end