Class: OrderReporting::DelayedJobScheduler

Inherits:
Object
  • Object
show all
Defined in:
lib/order_reporting/schedulers/delayed_job_scheduler.rb

Instance Method Summary collapse

Instance Method Details

#schedule(report, options) ⇒ Object



3
4
5
6
7
8
9
10
# File 'lib/order_reporting/schedulers/delayed_job_scheduler.rb', line 3

def schedule(report, options)
  unless options[:even_if_job_exists]
    return if Delayed::Job.where('handler LIKE ?', "%#{report.name}%").any?
  end

  job = RecurringReportDelayedJob.new(self, report, options)
  Delayed::Job.enqueue(job, run_at: options[:send_every].from_now)
end