Class: Useless::Rack
- Inherits:
-
Object
- Object
- Useless::Rack
- Defined in:
- lib/useless/rack.rb,
lib/useless/rack/base.rb,
lib/useless/rack/base/files.rb,
lib/useless/rack/middleware/fs.rb,
lib/useless/rack/middleware/mongo.rb,
lib/useless/rack/middleware/assets.rb,
lib/useless/rack/middleware/exceptions.rb,
lib/useless/rack/middleware/authentication/access_token.rb,
lib/useless/rack/middleware/authentication/query_string.rb,
lib/useless/rack/middleware/authentication/request_header.rb
Defined Under Namespace
Modules: Middleware Classes: Base
Class Method Summary collapse
Instance Method Summary collapse
- #call(env) ⇒ Object
-
#initialize(map = nil, &block) ⇒ Rack
constructor
A new instance of Rack.
- #map(pair) ⇒ Object
Constructor Details
#initialize(map = nil, &block) ⇒ Rack
Returns a new instance of Rack.
27 28 29 30 |
# File 'lib/useless/rack.rb', line 27 def initialize(map = nil, &block) @map = map || {} instance_eval &block if block_given? end |
Class Method Details
Instance Method Details
#call(env) ⇒ Object
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/useless/rack.rb', line 37 def call(env) ::Rack::Builder.app do use Middleware::Exceptions use Low::Rack::RequestId use Low::Rack::RackErrors use Low::Rack::LogLevel use Low::Rack::RequestLogger, key: 'useless.logger' use ::Rack::CommonLogger use Middleware::Assets use Middleware::Mongo use Middleware::FS use Middleware::Authentication::QueryString use Middleware::Authentication::RequestHeader run Low::Rack::SubdomainMap.new(Base.new, @map) end.call(env) end |
#map(pair) ⇒ Object
32 33 34 35 |
# File 'lib/useless/rack.rb', line 32 def map(pair) subdomain, app = pair.first @map[subdomain.to_s] = app.respond_to?(:new) ? app.new : app end |