Sha256: e88d106b945cd1287802470123cf8654ce4b5d15438d4787d6c0fb77bb1c2dd9
Contents?: true
Size: 1.18 KB
Versions: 3
Compression:
Stored size: 1.18 KB
Contents
require 'useless/doc/client' module Useless module Doc class Rack # +Doc::Rack::Subject+ retrieves a +Doc::Core+ entity based upon # 'useless.doc.url', from a environment-appropriate +Doc::Client+, # and sets it to 'useless.doc.subject'. # class Subject def initialize(app) @app = app end def call(env) client = case ENV['RACK_ENV'] when 'production'; Useless::Doc::Client.standard else Useless::Doc::Client.stub end if env['useless.doc.logger'] env['useless.doc.logger'].debug "selected Client: #{client.inspect}" end if env['useless.doc.subject'] = client.get(env['useless.doc.url']) if env['useless.doc.logger'] env['useless.doc.logger'].info "retrieved subject for #{env['useless.doc.url']}" env['useless.doc.logger'].debug "retrieved subject: #{env['useless.doc.subject'].inspect}" end @app.call(env) else [404, {'Content-Type' => 'text/plain'}, ['Could not retrieve documentation.']] end end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
useless-doc-0.4.0 | lib/useless/doc/rack/subject.rb |
useless-doc-0.3.1 | lib/useless/doc/rack/subject.rb |
useless-doc-0.3.0 | lib/useless/doc/rack/subject.rb |