Class: ActiveJob::QueueAdapters::SodaAdapter

Inherits:
Object
  • Object
show all
Defined in:
lib/soda/extensions/active_job.rb

Defined Under Namespace

Classes: JobWrapper

Instance Method Summary collapse

Instance Method Details

#enqueue(job) ⇒ Object



4
5
6
# File 'lib/soda/extensions/active_job.rb', line 4

def enqueue(job)
  enqueue_at(job, Time.now)
end

#enqueue_at(job, ts) ⇒ Object



8
9
10
11
12
13
14
15
16
# File 'lib/soda/extensions/active_job.rb', line 8

def enqueue_at(job, ts)
  job.provider_job_id = ::Soda::Client.push(
    "klass"   => JobWrapper,
    "wrapped" => job.class,
    "queue"   => job.queue_name,
    "delay"   => [0, (ts - Time.now).to_i].max,
    "args"    => [job.serialize],
  )
end