class Bellbro::SidekiqUtils::Worker

Attributes

source[RW]

Public Class Methods

all() click to toggle source
# File lib/bellbro/sidekiq_utils.rb, line 92
def self.all
  Sidekiq::Workers.new.map do |process_id, thread_id, worker|
    worker
  end
end
all_for_class(klass_name) click to toggle source
# File lib/bellbro/sidekiq_utils.rb, line 98
def self.all_for_class(klass_name)
  Retryable.retryable(on: Redis::TimeoutError) do
    all.select do |worker|
      worker.klass == klass_name
    end
  end
end
new(source) click to toggle source
# File lib/bellbro/sidekiq_utils.rb, line 60
def initialize(source)
  @source = source
end

Public Instance Methods

args() click to toggle source
# File lib/bellbro/sidekiq_utils.rb, line 72
def args
  payload["args"] || []
end
jid() click to toggle source
# File lib/bellbro/sidekiq_utils.rb, line 76
def jid
  payload["jid"]
end
klass() click to toggle source
# File lib/bellbro/sidekiq_utils.rb, line 84
def klass
  payload["class"]
end
method_missing(method_name, *args, &block) click to toggle source
# File lib/bellbro/sidekiq_utils.rb, line 64
def method_missing(method_name, *args, &block)
  args.first.try(:[],method_name.to_s)
end
payload() click to toggle source
# File lib/bellbro/sidekiq_utils.rb, line 68
def payload
  source["payload"] || {}
end
queue() click to toggle source
# File lib/bellbro/sidekiq_utils.rb, line 88
def queue
  source["queue"]
end
time() click to toggle source
# File lib/bellbro/sidekiq_utils.rb, line 80
def time
  source["run_at"]
end