class SidekiqScheduler::Scheduler

def idempotent_job_enqueue(job_name, time, config)

Parameters:
  • 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 = register_job_instance(job_name, time)
  if registered
    logger.info "queueing #{config['class']} (#{job_name})"
    handle_errors { enqueue_job(config, time) }
    remove_elder_job_instances(job_name)
  else
    logger.debug { "Ignoring #{job_name} job as it has been already enqueued" }
  end
end