class Quails::Configuration::MiddlewareStackProxy
MiddlewareStackProxy
is a proxy for the Quails
middleware stack that allows you to configure middlewares in your application. It works basically as a command recorder, saving each command to be applied after initialization over the default middleware stack, so you can add, swap, or remove any middleware in Quails
.
You can add your own middlewares by using the config.middleware.use
method:
config.middleware.use Magical::Unicorns
This will put the Magical::Unicorns
middleware on the end of the stack. You can use insert_before
if you wish to add a middleware before another:
config.middleware.insert_before Rack::Head, Magical::Unicorns
There's also insert_after
which will insert a middleware after another:
config.middleware.insert_after Rack::Head, Magical::Unicorns
Middlewares can also be completely swapped out and replaced with others:
config.middleware.swap ActionDispatch::Flash, Magical::Unicorns
And finally they can also be removed from the stack completely:
config.middleware.delete ActionDispatch::Flash
Public Class Methods
new(operations = [], delete_operations = [])
click to toggle source
# File railties/lib/rails/configuration.rb, line 38 def initialize(operations = [], delete_operations = []) @operations = operations @delete_operations = delete_operations end
Public Instance Methods
delete(*args, &block)
click to toggle source
# File railties/lib/rails/configuration.rb, line 61 def delete(*args, &block) @delete_operations << [__method__, args, block] end
insert_after(*args, &block)
click to toggle source
# File railties/lib/rails/configuration.rb, line 49 def insert_after(*args, &block) @operations << [__method__, args, block] end
insert_before(*args, &block)
click to toggle source
# File railties/lib/rails/configuration.rb, line 43 def insert_before(*args, &block) @operations << [__method__, args, block] end
Also aliased as: insert
swap(*args, &block)
click to toggle source
# File railties/lib/rails/configuration.rb, line 53 def swap(*args, &block) @operations << [__method__, args, block] end
unshift(*args, &block)
click to toggle source
# File railties/lib/rails/configuration.rb, line 65 def unshift(*args, &block) @operations << [__method__, args, block] end
use(*args, &block)
click to toggle source
# File railties/lib/rails/configuration.rb, line 57 def use(*args, &block) @operations << [__method__, args, block] end
Protected Instance Methods
delete_operations()
click to toggle source
# File railties/lib/rails/configuration.rb, line 86 def delete_operations @delete_operations end
operations()
click to toggle source
# File railties/lib/rails/configuration.rb, line 82 def operations @operations end