Module: ActiveJob::Enqueuing::ClassMethods
Relationships & Source Files | |
Defined in: | activejob/lib/active_job/enqueuing.rb |
Overview
Includes the #perform_later method for job initialization.
Instance Method Summary
-
#perform_later(*args)
Push a job onto the queue.
- #job_or_instantiate(*args) private
Instance Method Details
#job_or_instantiate(*args) (private)
[ GitHub ]# File 'activejob/lib/active_job/enqueuing.rb', line 27
def job_or_instantiate(*args) # :doc: args.first.is_a?(self) ? args.first : new(*args) end
#perform_later(*args)
Push a job onto the queue. By default the arguments must be either ::String
, ::Integer
, ::Float
, ::NilClass
, ::TrueClass
, ::FalseClass
, ::BigDecimal
, ::Symbol
, ::Date
, ::Time
, ::DateTime
, ::ActiveSupport::TimeWithZone
, ::ActiveSupport::Duration
, ::Hash
, ::ActiveSupport::HashWithIndifferentAccess
, ::Array
or GlobalID::Identification
instances, although this can be extended by adding custom serializers.
Returns an instance of the job class queued with arguments available in Job#arguments
.
# File 'activejob/lib/active_job/enqueuing.rb', line 21
def perform_later(*args) job_or_instantiate(*args).enqueue end