Module: Aker::Rack
- Defined in:
- lib/aker/rack.rb,
lib/aker/rack/setup.rb,
lib/aker/rack/facade.rb,
lib/aker/rack/logout.rb,
lib/aker/rack/failure.rb,
lib/aker/rack/request_ext.rb,
lib/aker/rack/authenticate.rb,
lib/aker/rack/session_timer.rb,
lib/aker/rack/environment_helper.rb,
lib/aker/rack/configuration_helper.rb,
lib/aker/rack/default_logout_responder.rb
Overview
Integration of Aker with / Rack.
Defined Under Namespace
Modules: ConfigurationHelper, EnvironmentHelper, RequestExt Classes: Authenticate, DefaultLogoutResponder, Facade, Failure, Logout, SessionTimer, Setup, Slice
Class Method Summary collapse
-
.use_in(builder, configuration = nil) ⇒ void
Configures all the necessary middleware for Aker into the given rack application stack.
Class Method Details
.use_in(builder, configuration = nil) ⇒ void
This method returns an undefined value.
Configures all the necessary middleware for Aker into the given rack application stack. With ‘Rack::Builder`:
Rack::Builder.new do
Aker::Rack.use_in(self) # self is the builder instance
end
Aker’s middleware stack relies on the existence of a session, so the session-enabling middleware must be higher in the application stack than Aker.
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/aker/rack.rb', line 38 def use_in(builder, configuration=nil) effective_configuration = configuration || Aker.configuration unless effective_configuration fail "No configuration was provided and there's no global configuration. " << "Please set one or the other before calling use_in." end install_modes(effective_configuration) builder.use Setup, effective_configuration with_mode_middlewares(builder, effective_configuration) do effective_configuration.install_middleware(:before_authentication, builder) builder.use Warden::Manager do |manager| manager.failure_app = Aker::Rack::Failure.new end builder.use SessionTimer builder.use Authenticate effective_configuration.install_middleware(:after_authentication, builder) builder.use Logout end builder.use DefaultLogoutResponder end |