aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_controller/middleware_stack.rb
diff options
context:
space:
mode:
Diffstat (limited to 'actionpack/lib/action_controller/middleware_stack.rb')
-rw-r--r--actionpack/lib/action_controller/middleware_stack.rb16
1 files changed, 10 insertions, 6 deletions
diff --git a/actionpack/lib/action_controller/middleware_stack.rb b/actionpack/lib/action_controller/middleware_stack.rb
index ba99f77b81..74f28565c0 100644
--- a/actionpack/lib/action_controller/middleware_stack.rb
+++ b/actionpack/lib/action_controller/middleware_stack.rb
@@ -1,14 +1,10 @@
module ActionController
class MiddlewareStack < Array
class Middleware
- attr_reader :klass, :args, :block
+ attr_reader :args, :block
def initialize(klass, *args, &block)
- if klass.is_a?(Class)
- @klass = klass
- else
- @klass = klass.to_s.constantize
- end
+ @klass = klass
options = args.extract_options!
if options.has_key?(:if)
@@ -22,6 +18,14 @@ module ActionController
@block = block
end
+ def klass
+ if @klass.is_a?(Class)
+ @klass
+ else
+ @klass.to_s.constantize
+ end
+ end
+
def active?
if @conditional.respond_to?(:call)
@conditional.call