class SidekiqScheduler::Scheduler
def idempotent_job_enqueue(job_name, time, config)
-
config
(Hash
) -- Job's config hash -
time
(Time
) -- The time when the job got cleared for triggering -
job_name
(String
) -- The job's name
def idempotent_job_enqueue(job_name, time, config) registered = SidekiqScheduler::RedisManager.register_job_instance(job_name, time) if registered Sidekiq.logger.info "queueing #{config['class']} (#{job_name})" handle_errors { enqueue_job(config, time) } SidekiqScheduler::RedisManager.remove_elder_job_instances(job_name) else Sidekiq.logger.debug { "Ignoring #{job_name} job as it has been already enqueued" } end end