Sha256: cfa1558aeebf0ce581030a019b5c453599bcfb3051f4f2ae16471ff05089c7a1
Contents?: true
Size: 1.1 KB
Versions: 3
Compression:
Stored size: 1.1 KB
Contents
require 'active_support/rescuable' require 'active_job/arguments' module ActiveJob module Execution extend ActiveSupport::Concern include ActiveSupport::Rescuable # Includes methods for executing and performing jobs instantly. module ClassMethods # Performs the job immediately. # # MyJob.perform_now("mike") # def perform_now(*args) job_or_instantiate(*args).perform_now end def execute(job_data) #:nodoc: ActiveJob::Callbacks.run_callbacks(:execute) do job = deserialize(job_data) job.perform_now end end end # Performs the job immediately. The job is not sent to the queueing adapter # but directly executed by blocking the execution of others until it's finished. # # MyJob.new(*args).perform_now def perform_now deserialize_arguments_if_needed run_callbacks :perform do perform(*arguments) end rescue => exception rescue_with_handler(exception) || raise(exception) end def perform(*) fail NotImplementedError end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
activejob-5.0.0.racecar1 | lib/active_job/execution.rb |
activejob-5.0.0.rc1 | lib/active_job/execution.rb |
activejob-5.0.0.beta4 | lib/active_job/execution.rb |