diff options
author | David Heinemeier Hansson <david@loudthinking.com> | 2014-05-22 20:37:06 +0200 |
---|---|---|
committer | David Heinemeier Hansson <david@loudthinking.com> | 2014-05-22 20:37:06 +0200 |
commit | 26dc3ea7b8ac770b8265fa8ce97ed67158cfb68a (patch) | |
tree | f5eb36ae2efbb3a753c4dba5c0592a85e4544efa /lib/active_job/execution.rb | |
parent | ef4aff07a41f1249baade695e68c75a8db3ded58 (diff) | |
download | rails-26dc3ea7b8ac770b8265fa8ce97ed67158cfb68a.tar.gz rails-26dc3ea7b8ac770b8265fa8ce97ed67158cfb68a.tar.bz2 rails-26dc3ea7b8ac770b8265fa8ce97ed67158cfb68a.zip |
Rename #perform_with_hooks to #execution
Diffstat (limited to 'lib/active_job/execution.rb')
-rw-r--r-- | lib/active_job/execution.rb | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/lib/active_job/execution.rb b/lib/active_job/execution.rb new file mode 100644 index 0000000000..563e42ff89 --- /dev/null +++ b/lib/active_job/execution.rb @@ -0,0 +1,26 @@ +require 'active_support/rescuable' +require 'active_job/arguments' + +module ActiveJob + module Execution + extend ActiveSupport::Concern + + included do + include ActiveSupport::Rescuable + end + + def execute(*serialized_args) + self.arguments = Arguments.deserialize(serialized_args) + + run_callbacks :perform do + perform *arguments + end + rescue => exception + rescue_with_handler(exception) + end + + def perform(*) + raise NotImplementedError + end + end +end |