Class: ActiveJob::Queue
- Inherits:
-
Object
- Object
- ActiveJob::Queue
- Defined in:
- lib/active_job/queue.rb
Overview
A queue of jobs
Instance Attribute Summary collapse
-
#name ⇒ Object
readonly
Returns the value of attribute name.
Instance Method Summary collapse
- #active? ⇒ Boolean
- #clear ⇒ Object
- #empty? ⇒ Boolean
- #id ⇒ Object (also: #to_param)
-
#initialize(name, size: nil, active: nil, queue_adapter: ActiveJob::Base.queue_adapter) ⇒ Queue
constructor
A new instance of Queue.
-
#jobs ⇒ Object
Return an
ActiveJob::JobsRelationwith the pending jobs in the queue. - #pause ⇒ Object
- #paused? ⇒ Boolean
- #reload ⇒ Object
- #resume ⇒ Object
- #size ⇒ Object (also: #length)
Constructor Details
#initialize(name, size: nil, active: nil, queue_adapter: ActiveJob::Base.queue_adapter) ⇒ Queue
Returns a new instance of Queue.
5 6 7 8 9 10 11 |
# File 'lib/active_job/queue.rb', line 5 def initialize(name, size: nil, active: nil, queue_adapter: ActiveJob::Base.queue_adapter) @name = name @queue_adapter = queue_adapter @size = size @active = active end |
Instance Attribute Details
#name ⇒ Object (readonly)
Returns the value of attribute name.
3 4 5 |
# File 'lib/active_job/queue.rb', line 3 def name @name end |
Instance Method Details
#active? ⇒ Boolean
39 40 41 42 |
# File 'lib/active_job/queue.rb', line 39 def active? return @active unless @active.nil? @active = !queue_adapter.queue_paused?(name) end |
#clear ⇒ Object
19 20 21 |
# File 'lib/active_job/queue.rb', line 19 def clear queue_adapter.clear_queue(name) end |
#empty? ⇒ Boolean
23 24 25 |
# File 'lib/active_job/queue.rb', line 23 def empty? size == 0 end |
#id ⇒ Object Also known as: to_param
54 55 56 |
# File 'lib/active_job/queue.rb', line 54 def id name.parameterize end |
#jobs ⇒ Object
Return an ActiveJob::JobsRelation with the pending jobs in the queue.
45 46 47 |
# File 'lib/active_job/queue.rb', line 45 def jobs ActiveJob::JobsRelation.new(queue_adapter: queue_adapter).pending.where(queue_name: name) end |
#pause ⇒ Object
27 28 29 |
# File 'lib/active_job/queue.rb', line 27 def pause queue_adapter.pause_queue(name) end |
#paused? ⇒ Boolean
35 36 37 |
# File 'lib/active_job/queue.rb', line 35 def paused? !active? end |
#reload ⇒ Object
49 50 51 52 |
# File 'lib/active_job/queue.rb', line 49 def reload @active = @size = nil self end |
#resume ⇒ Object
31 32 33 |
# File 'lib/active_job/queue.rb', line 31 def resume queue_adapter.resume_queue(name) end |
#size ⇒ Object Also known as: length
13 14 15 |
# File 'lib/active_job/queue.rb', line 13 def size @size ||= queue_adapter.queue_size(name) end |