module BackgroundJobs::Sidekiq

Public Class Methods

register_job_callback(job_metadata) click to toggle source
# File lib/background_jobs/strategies/sidekiq/setup.rb, line 14
def self.register_job_callback(job_metadata)
  options = job_metadata.options

  BackgroundJobs::QueueService.enqueue(
    job_metadata.name, [], :in => options[:schedule], :unique => true
  ) if options[:schedule]
end
setup(options) click to toggle source
# File lib/background_jobs/strategies/sidekiq/setup.rb, line 6
def self.setup(options)
  ::Sidekiq.configure_server do |config|
    config.redis = options[:redis] if options[:redis]
  end

  BackgroundJobs.job_registry.register_callback = method(:register_job_callback)
end

Private Class Methods

is_scheduled?(job_name) click to toggle source
# File lib/background_jobs/strategies/sidekiq/setup.rb, line 24
def self.is_scheduled?(job_name)
  entries = ::Sidekiq::ScheduledSet.new.entries
  job_names = entries.map(&:item).map {|item| item['args'].first }

  job_names.include?(job_name.to_s)
end