module ActiveJob::Enqueuing::ClassMethods
Includes the perform_later
method for job initialization.
Public Instance Methods
perform_later(...) { |job| ... }
click to toggle source
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, Range, 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 or false if the enqueue did not succeed.
After the attempted enqueue, the job will be yielded to an optional block.
# File lib/active_job/enqueuing.rb, line 28 def perform_later(...) job = job_or_instantiate(...) enqueue_result = job.enqueue yield job if block_given? enqueue_result end
Private Instance Methods
job_or_instantiate(*args)
click to toggle source
# File lib/active_job/enqueuing.rb, line 38 def job_or_instantiate(*args) # :doc: args.first.is_a?(self) ? args.first : new(*args) end