Class: ActiveJob::QueueAdapters::DelayedJobAdapter
- Inherits:
-
AbstractAdapter
- Object
- AbstractAdapter
- ActiveJob::QueueAdapters::DelayedJobAdapter
- Defined in:
- activejob/lib/active_job/queue_adapters/delayed_job_adapter.rb
Overview
Delayed Job adapter for Active Job
Delayed::Job (or DJ) encapsulates the common pattern of asynchronously executing longer tasks in the background. Although DJ can have many storage backends, one of the most used is based on Active Record. Read more about Delayed Job here.
To use Delayed Job, set the queue_adapter config to :delayed_job.
Rails.application.config.active_job.queue_adapter = :delayed_job
Defined Under Namespace
Classes: JobWrapper
Instance Attribute Summary
Attributes inherited from AbstractAdapter
Instance Method Summary collapse
- #check_adapter ⇒ Object
-
#enqueue(job) ⇒ Object
:nodoc:.
-
#enqueue_at(job, timestamp) ⇒ Object
:nodoc:.
Methods inherited from AbstractAdapter
Instance Method Details
#check_adapter ⇒ Object
19 20 21 22 23 24 |
# File 'activejob/lib/active_job/queue_adapters/delayed_job_adapter.rb', line 19 def check_adapter ActiveJob.deprecator.warn <<~MSG.squish The built-in `delayed_job` adapter is deprecated and will be removed in Rails 9.0. Please upgrade `delayed_job` gem to version 4.2.0 or later to use the `delayed_job` gem's adapter. MSG end |
#enqueue(job) ⇒ Object
:nodoc:
26 27 28 29 30 |
# File 'activejob/lib/active_job/queue_adapters/delayed_job_adapter.rb', line 26 def enqueue(job) # :nodoc: delayed_job = Delayed::Job.enqueue(JobWrapper.new(job.serialize), queue: job.queue_name, priority: job.priority) job.provider_job_id = delayed_job.id delayed_job end |
#enqueue_at(job, timestamp) ⇒ Object
:nodoc:
32 33 34 35 36 |
# File 'activejob/lib/active_job/queue_adapters/delayed_job_adapter.rb', line 32 def enqueue_at(job, ) # :nodoc: delayed_job = Delayed::Job.enqueue(JobWrapper.new(job.serialize), queue: job.queue_name, priority: job.priority, run_at: Time.at()) job.provider_job_id = delayed_job.id delayed_job end |