Class: ActiveJob::QueueAdapters::DelayedJobAdapter
| Relationships & Source Files | |
| Namespace Children | |
|
Classes:
| |
| Super Chains via Extension / Inclusion / Inheritance | |
|
Class Chain:
self,
AbstractAdapter
|
|
|
Instance Chain:
self,
AbstractAdapter
|
|
| Inherits: |
ActiveJob::QueueAdapters::AbstractAdapter
|
| 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
Instance Attribute Summary
AbstractAdapter - Inherited
Instance Method Summary
- #check_adapter
- #enqueue(job) Internal use only
- #enqueue_at(job, timestamp) Internal use only
AbstractAdapter - Inherited
Instance Method Details
#check_adapter
[ GitHub ]# 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)
This method is for internal use only.
[ GitHub ]
# 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)
This method is for internal use only.
[ GitHub ]
# 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