module Sidetiq::API
Public Instance Methods
retries(worker = nil, &block)
click to toggle source
Public: Recurring jobs currently scheduled for retries.
worker - A Sidekiq::Worker class or String of the class name (optional) block - An optional block that can be given to which each
Sidekiq::SortedEntry instance corresponding to a scheduled job will be yielded.
Examples
Sidetiq.retries # => [#<Sidekiq::SortedEntry>, ...] Sidetiq.retries(MyWorker) # => [#<Sidekiq::SortedEntry>, ...] Sidetiq.retries("MyWorker") # => [#<Sidekiq::SortedEntry>, ...] Sidetiq.retries do |job| # do stuff ... end # => [#<Sidekiq::SortedEntry>, ...] Sidetiq.retries(MyWorker) do |job| # do stuff ... end # => [#<Sidekiq::SortedEntry>, ...] Sidetiq.retries("MyWorker") do |job| # do stuff ... end # => [#<Sidekiq::SortedEntry>, ...]
Yields each Sidekiq::SortedEntry instance. Returns an Array of Sidekiq::SortedEntry objects.
# File lib/sidetiq/api.rb, line 92 def retries(worker = nil, &block) filter_set(Sidekiq::RetrySet.new, worker, &block) end
scheduled(worker = nil, &block)
click to toggle source
Public: Currently scheduled recurring jobs.
worker - A Sidekiq::Worker class or String of the class name (optional) block - An optional block that can be given to which each
Sidekiq::SortedEntry instance corresponding to a scheduled job will be yielded.
Examples
Sidetiq.scheduled # => [#<Sidekiq::SortedEntry>, ...] Sidetiq.scheduled(MyWorker) # => [#<Sidekiq::SortedEntry>, ...] Sidetiq.scheduled("MyWorker") # => [#<Sidekiq::SortedEntry>, ...] Sidetiq.scheduled do |job| # do stuff ... end # => [#<Sidekiq::SortedEntry>, ...] Sidetiq.scheduled(MyWorker) do |job| # do stuff ... end # => [#<Sidekiq::SortedEntry>, ...] Sidetiq.scheduled("MyWorker") do |job| # do stuff ... end # => [#<Sidekiq::SortedEntry>, ...]
Yields each Sidekiq::SortedEntry instance. Returns an Array of Sidekiq::SortedEntry objects.
# File lib/sidetiq/api.rb, line 53 def scheduled(worker = nil, &block) filter_set(Sidekiq::ScheduledSet.new, worker, &block) end
schedules()
click to toggle source
Public: Returns a Hash of Sidetiq::Schedule
instances.
# File lib/sidetiq/api.rb, line 14 def schedules workers.map(&:schedule) end
workers()
click to toggle source
Public: Returns an Array of workers including Sidetiq::Schedulable
. Excludes classes which don't define a perform method.
# File lib/sidetiq/api.rb, line 7 def workers Sidetiq::Schedulable.subclasses(true).select do |klass| klass.method_defined?(:perform) end end
Private Instance Methods
filter_set(set, worker, &block)
click to toggle source
# File lib/sidetiq/api.rb, line 98 def filter_set(set, worker, &block) worker = worker.constantize if worker.kind_of?(String) jobs = set.select do |job| klass = job.klass.constantize ret = klass.include?(Schedulable) ret = ret && klass == worker if worker ret end jobs.each(&block) if block_given? jobs end