123456789_123456789_123456789_123456789_123456789_

Class: ActionController::MiddlewareStack::Proxy

Do not use. This class is for internal use only.
Relationships & Source Files
Inherits: Object
Defined in: actionpack/lib/action_controller/metal.rb

Class Method Summary

Instance Attribute Summary

Instance Method Summary

Constructor Details

.new(controller) ⇒ Proxy

[ GitHub ]

  
# File 'actionpack/lib/action_controller/metal.rb', line 22

def initialize(controller)
  @controller = controller
end

Instance Attribute Details

#middlewares=(middlewares) (writeonly)

[ GitHub ]

  
# File 'actionpack/lib/action_controller/metal.rb', line 37

def middlewares=(middlewares)
  stack = middleware_stack.dup
  stack.middlewares = middlewares
  replace_middleware_stack(stack)
  middlewares
end

Instance Method Details

#middleware_stack (private)

[ GitHub ]

  
# File 'actionpack/lib/action_controller/metal.rb', line 45

def middleware_stack
  @controller.middleware_stack
end

#replace_middleware_stack(stack) (private)

[ GitHub ]

  
# File 'actionpack/lib/action_controller/metal.rb', line 49

def replace_middleware_stack(stack)
  @controller.middleware_stack = ActiveSupport::Ractors.try_make_shareable(stack)
end