These methods will be included into any Active Job object, adding helpers for de/serialization and creation of job instances.

Methods

Instance Public methods

deserialize(job_data)

Creates a new job instance from a hash created with serialize

📝 Source code
# File activejob/lib/active_job/core.rb, line 50
      def deserialize(job_data)
        job = job_data["job_class"].constantize.new
        job.deserialize(job_data)
        job
      end
🔎 See on GitHub

set(options = {})

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

  • :priority - Enqueues the job with the specified priority

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)
VideoJob.set(queue: :some_queue, wait: 5.minutes, priority: 10).perform_later(Video.last)
📝 Source code
# File activejob/lib/active_job/core.rb, line 74
      def set(options = {})
        ConfiguredJob.new(self, options)
      end
🔎 See on GitHub