module Sidekiq::Running::ClassMethods
Public Instance Methods
perform_async_unelss_running_or_queued(*args)
click to toggle source
# File lib/sidekiq/running.rb, line 75 def perform_async_unelss_running_or_queued(*args) perform_async(*args) unless running_or_queued?(*args) end
Also aliased as: perform_async_unless_queued_or_running
perform_async_unless_programmed(*args)
click to toggle source
# File lib/sidekiq/running.rb, line 71 def perform_async_unless_programmed(*args) perform_async(*args) unless programmed?(*args) end
perform_async_unless_programmed_or_running(*args)
Alias for: perform_async_unless_running_or_programmed
perform_async_unless_queued(*args)
click to toggle source
# File lib/sidekiq/running.rb, line 59 def perform_async_unless_queued(*args) perform_async(*args) unless queued?(*args) end
perform_async_unless_running(*args)
click to toggle source
# File lib/sidekiq/running.rb, line 63 def perform_async_unless_running(*args) perform_async(*args) unless running?(*args) end
perform_async_unless_running_or_programmed(*args)
click to toggle source
# File lib/sidekiq/running.rb, line 80 def perform_async_unless_running_or_programmed(*args) perform_async(*args) unless running_or_programmed?(*args) end
Also aliased as: perform_async_unless_programmed_or_running
perform_async_unless_scheduled(*args)
click to toggle source
# File lib/sidekiq/running.rb, line 67 def perform_async_unless_scheduled(*args) perform_async(*args) unless scheduled?(*args) end
programmed?(*args)
click to toggle source
# File lib/sidekiq/running.rb, line 45 def programmed?(*args) queued?(*args) or scheduled?(*args) end
queue_name()
click to toggle source
# File lib/sidekiq/running.rb, line 10 def queue_name sidekiq_options_hash["queue"].to_s || "default" end
queued?(*args)
click to toggle source
# File lib/sidekiq/running.rb, line 14 def queued?(*args) queue = Sidekiq::Queue.new(queue_name) queue.any? do |job| job.klass == self.name && job.args == args end end
queued_to_retry?(*args)
click to toggle source
# File lib/sidekiq/running.rb, line 38 def queued_to_retry?(*args) set = Sidekiq::RetrySet.new set.any? do |job| job.klass == self.name && job.args == args end end
running?(*args)
click to toggle source
# File lib/sidekiq/running.rb, line 21 def running?(*args) workers = Sidekiq::Workers.new workers.to_a.any? do |worker_name, tid, work| payload = work["payload"] next unless payload payload["queue"] == queue_name and payload["class"] == self.name && payload["args"] == args end end
running_or_programmed?(*args)
click to toggle source
# File lib/sidekiq/running.rb, line 54 def running_or_programmed?(*args) queued?(*args) or programmed?(*args) end
Also aliased as: programmed_or_running?
running_or_queued?(*args)
click to toggle source
# File lib/sidekiq/running.rb, line 49 def running_or_queued?(*args) running?(*args) or queued?(*args) end
Also aliased as: queued_or_running?
scheduled?(*args)
click to toggle source
# File lib/sidekiq/running.rb, line 30 def scheduled?(*args) scheduled = Sidekiq::ScheduledSet.new scheduled_job = scheduled.find do |job| job.klass == self.name && job.args == args end scheduled_job && scheduled_job.at or false end