module Hanami::Action::Rack::ClassMethods
@api private
Public Instance Methods
params_class()
click to toggle source
Returns the class which defines the params
Returns the class which has been provided to define the params. By default this will be Hanami::Action::Params
.
@return [Class] A params class (when whitelisted) or
Hanami::Action::Params
@api private @since 0.7.0
# File lib/hanami/action/rack.rb, line 168 def params_class @params_class ||= BaseParams end
rack_builder()
click to toggle source
Build rack builder
@return [Rack::Builder] @api private
# File lib/hanami/action/rack.rb, line 116 def rack_builder @rack_builder ||= begin extend Hanami::Action::Rack::Callable rack_builder = ::Rack::Builder.new rack_builder.run ->(env) { self.new.call(env) } rack_builder end end
use(middleware, *args, &block)
click to toggle source
Use a Rack
middleware
The middleware will be used as it is.
At the runtime, the middleware be invoked with the raw Rack
env.
Multiple middlewares can be employed, just by using multiple times this method.
@param middleware [#call] A Rack
middleware @param args [Array] Array arguments for middleware
@since 0.2.0
@see Hanami::Action::Callbacks::ClassMethods#before
@example Middleware
require 'hanami/controller' module Sessions class Create include Hanami::Action use OmniAuth def call(params) # ... end end end
# File lib/hanami/action/rack.rb, line 154 def use(middleware, *args, &block) rack_builder.use middleware, *args, &block end