module ActiveJob::Core::ClassMethods
These methods will be included into any Active Job object, adding helpers for de/serialization and creation of job instances.
Public Instance Methods
# File activejob/lib/active_job/core.rb, line 27 def deserialize(job_data) job = job_data['job_class'].constantize.new job.job_id = job_data['job_id'] job.queue_name = job_data['queue_name'] job.serialized_arguments = job_data['arguments'] job.locale = job_data['locale'] || I18n.locale job end
Creates a new job instance from a hash created with serialize
# File activejob/lib/active_job/core.rb, line 52 def set(options={}) ConfiguredJob.new(self, options) end
Creates a job preconfigured with the given options. You can call perform_later with the job arguments to enqueue the job with the preconfigured options
Options
-
:wait
- Enqueues the job with the specified delay -
:wait_until
- Enqueues the job at the time specified -
:queue
- Enqueues the job on the specified queue
Examples
VideoJob.set(queue: :some_queue).perform_later(Video.last) VideoJob.set(wait: 5.minutes).perform_later(Video.last) VideoJob.set(wait_until: Time.now.tomorrow).perform_later(Video.last) VideoJob.set(queue: :some_queue, wait: 5.minutes).perform_later(Video.last) VideoJob.set(queue: :some_queue, wait_until: Time.now.tomorrow).perform_later(Video.last)
© 2004–2018 David Heinemeier Hansson
Licensed under the MIT License.