Module: ActiveJob::Cancel::ClassMethods

Defined in:
lib/active_job/cancel.rb

Instance Method Summary collapse

Instance Method Details

#can_cancel?Boolean

Returns:

  • (Boolean)


38
39
40
# File 'lib/active_job/cancel.rb', line 38

def can_cancel?
  SUPPORTED_ADAPTERS.include?(adapter_name)
end

#cancel(job_id) ⇒ Object



22
23
24
25
26
27
28
# File 'lib/active_job/cancel.rb', line 22

def cancel(job_id)
  if can_cancel?
    cancel_adapter_class.new.cancel(job_id, self.new.queue_name)
  else
    raise NotImplementedError, 'This queueing backend does not support cancel.'
  end
end

#cancel_adapter_classObject



42
43
44
# File 'lib/active_job/cancel.rb', line 42

def cancel_adapter_class
  Object.const_get("ActiveJob::Cancel::QueueAdapters::#{adapter_name}Adapter")
end

#cancel_by(opts) ⇒ Object



30
31
32
33
34
35
36
# File 'lib/active_job/cancel.rb', line 30

def cancel_by(opts)
  if can_cancel?
    cancel_adapter_class.new.cancel_by(opts, self.new.queue_name)
  else
    raise NotImplementedError, 'This queueing backend does not support cancel_by.'
  end
end