Sha256: 62f39b65b8470d6751467f5e74ef1f41640d90cbf44e796757cbaef30b6f20a7

Contents?: true

Size: 744 Bytes

Versions: 52

Compression:

Stored size: 744 Bytes

Contents

module ActionDispatch
  # Provides callbacks to be executed before and after dispatching the request.
  class Callbacks
    include ActiveSupport::Callbacks

    define_callbacks :call

    class << self
      delegate :to_prepare, :to_cleanup, :to => "ActionDispatch::Reloader"

      def before(*args, &block)
        set_callback(:call, :before, *args, &block)
      end

      def after(*args, &block)
        set_callback(:call, :after, *args, &block)
      end
    end

    def initialize(app)
      @app = app
    end

    def call(env)
      error = nil
      result = run_callbacks :call do
        begin
          @app.call(env)
        rescue => error
        end
      end
      raise error if error
      result
    end
  end
end

Version data entries

52 entries across 51 versions & 8 rubygems

Version Path
actionpack-4.2.11.3 lib/action_dispatch/middleware/callbacks.rb
actionpack-4.2.11.2 lib/action_dispatch/middleware/callbacks.rb
actionpack-4.2.11.1 lib/action_dispatch/middleware/callbacks.rb
actionpack-4.2.11 lib/action_dispatch/middleware/callbacks.rb
actionpack-4.2.10 lib/action_dispatch/middleware/callbacks.rb
actionpack-4.2.10.rc1 lib/action_dispatch/middleware/callbacks.rb
actionpack-4.2.9 lib/action_dispatch/middleware/callbacks.rb
actionpack-4.2.9.rc2 lib/action_dispatch/middleware/callbacks.rb
actionpack-4.2.9.rc1 lib/action_dispatch/middleware/callbacks.rb
enju_leaf-1.2.1 vendor/bundle/ruby/2.3/gems/actionpack-4.2.8/lib/action_dispatch/middleware/callbacks.rb
actionpack-4.2.8 lib/action_dispatch/middleware/callbacks.rb
actionpack-4.2.8.rc1 lib/action_dispatch/middleware/callbacks.rb
actionpack-4.2.7.1 lib/action_dispatch/middleware/callbacks.rb
actionpack-4.2.7 lib/action_dispatch/middleware/callbacks.rb
actionpack-4.2.7.rc1 lib/action_dispatch/middleware/callbacks.rb
ish_lib_manager-0.0.1 test/dummy/vendor/bundle/ruby/2.3.0/gems/actionpack-4.2.6/lib/action_dispatch/middleware/callbacks.rb
actionpack-4.2.6 lib/action_dispatch/middleware/callbacks.rb
actionpack-4.2.6.rc1 lib/action_dispatch/middleware/callbacks.rb
actionpack-4.2.5.2 lib/action_dispatch/middleware/callbacks.rb
actionpack-5.0.0.beta3 lib/action_dispatch/middleware/callbacks.rb