diff options
author | mo khan <mo@mokhan.ca> | 2014-09-26 11:10:06 -0600 |
---|---|---|
committer | mo khan <mo@mokhan.ca> | 2014-10-02 10:57:30 -0600 |
commit | bc6421c9eff09fee31d4947d2cc6ddc580314de0 (patch) | |
tree | b60143567122b7b368886baa916df38d1a23da10 /activejob/lib/active_job/base.rb | |
parent | 7b740f31cc6f88fe20a51eb7da1468082e6fdb5a (diff) | |
download | rails-bc6421c9eff09fee31d4947d2cc6ddc580314de0.tar.gz rails-bc6421c9eff09fee31d4947d2cc6ddc580314de0.tar.bz2 rails-bc6421c9eff09fee31d4947d2cc6ddc580314de0.zip |
Add documentation on Active Job.
This adds documentation for the Active Job API. It includes
documentation on how to configure the queue_adapter, and how to create
new jobs. It adds links to the various other sections of the Active Job
documentation.
Diffstat (limited to 'activejob/lib/active_job/base.rb')
-rw-r--r-- | activejob/lib/active_job/base.rb | 43 |
1 files changed, 42 insertions, 1 deletions
diff --git a/activejob/lib/active_job/base.rb b/activejob/lib/active_job/base.rb index a3bec1f827..8f4b37222a 100644 --- a/activejob/lib/active_job/base.rb +++ b/activejob/lib/active_job/base.rb @@ -6,7 +6,48 @@ require 'active_job/execution' require 'active_job/callbacks' require 'active_job/logging' -module ActiveJob +module ActiveJob #:nodoc: + # = Active Job + # + # Active job objects can be configured to work with different backend + # queuing frameworks. To specify a queue adapter to use: + # + # ActiveJob::Base.queue_adapter = :inline + # + # A list of supported adapters can be found in QueueAdapters. + # + # Active job objects can be defined by creating a class that inherits + # from the ActiveJob::Base class. The only necessary method to + # implement is the "perform" method. + # + # To define an Active Job object: + # + # class ProcessPhotoJob < ActiveJob::Base + # def perform(photo) + # photo.watermark!('Rails') + # photo.rotate!(90.degrees) + # photo.resize_to_fit!(300, 300) + # photo.upload! + # end + # end + # + # Records that are passed in are serialized/deserialized using Global + # Id. More information can be found in Arguments. + # + # To queue a job to be processed asynchronously immediately: + # + # ProcessPhotoJob.perform_later(photo) + # + # To queue a job to be processed at some point in the future: + # + # ProcessPhotoJob.set(wait_until: Date.tomorrow.noon).perform_later(photo) + # + # More information can be found in ActiveJob::Core::ClassMethods#set + # + # == Exceptions + # + # * DeserializationError - Error class for deserialization errors. + # * SerializationError - Error class for serialization errors. class Base include Core include QueueAdapter |