class Sidekiq::PriorityQueue::CombinedFetch
Attributes
fetches[R]
Public Class Methods
configure() { |combined_fetch| ... }
click to toggle source
# File lib/sidekiq/priority_queue/combined_fetch.rb, line 19 def self.configure(&block) combined_fetch = self.new yield combined_fetch combined_fetch end
new(fetches = [])
click to toggle source
# File lib/sidekiq/priority_queue/combined_fetch.rb, line 8 def initialize(fetches = []) @fetches = fetches end
Public Instance Methods
add(fetch)
click to toggle source
# File lib/sidekiq/priority_queue/combined_fetch.rb, line 26 def add(fetch) fetches << fetch end
bulk_requeue(inprogress, options)
click to toggle source
# File lib/sidekiq/priority_queue/combined_fetch.rb, line 30 def bulk_requeue(inprogress, options) # ReliableFetch#bulk_equeue ignores inprogress, so it's safe to call both fetches.each do |f| if [Fetch, ReliableFetch].any? { |klass| f.is_a?(klass) } jobs_to_requeue = inprogress.select{|uow| uow.queue.start_with?('priority-queue:') } f.bulk_requeue(jobs_to_requeue, options) else jobs_to_requeue = inprogress.reject{|uow| uow.queue.start_with?('priority-queue:') } f.bulk_requeue(jobs_to_requeue, options) end end end
retrieve_work()
click to toggle source
# File lib/sidekiq/priority_queue/combined_fetch.rb, line 12 def retrieve_work fetches.each do |fetch| work = fetch.retrieve_work return work if work end end