Class: ActiveJob::Cancel::QueueAdapters::DelayedJobAdapter

Inherits:
Object
  • Object
show all
Defined in:
lib/active_job/cancel/queue_adapters/delayed_job_adapter.rb

Instance Method Summary collapse

Instance Method Details

#cancel(job_id, queue_name) ⇒ Object



8
9
10
11
12
13
14
15
16
# File 'lib/active_job/cancel/queue_adapters/delayed_job_adapter.rb', line 8

def cancel(job_id, queue_name)
  queue_name = queue_name.call if queue_name.is_a?(Proc)
  job = find_job(job_id, queue_name)
  if job
    job.destroy
    return true
  end
  false
end

#cancel_by(opts, _queue_name) ⇒ Object

Raises:

  • (ArgumentError)


18
19
20
21
22
23
24
25
26
27
28
# File 'lib/active_job/cancel/queue_adapters/delayed_job_adapter.rb', line 18

def cancel_by(opts, _queue_name)
  raise ArgumentError, 'Please specify ":provider_job_id"' unless opts[:provider_job_id]
  job_id = opts[:provider_job_id]

  job = Delayed::Job.find_by(id: job_id)
  if job
    job.destroy
    return true
  end
  false
end