class Rack::Swagger::JsonServer

Constants

RESOURCE_DOC_JSON_MATCHER
ROOT_DOC_JSON_MATCHER

Public Class Methods

new(docs_dir, opts) click to toggle source
# File lib/rack/swagger/json_server.rb, line 9
def initialize(docs_dir, opts)
  @docs_dir = docs_dir
  @opts = opts
end

Public Instance Methods

call(env) click to toggle source
# File lib/rack/swagger/json_server.rb, line 14
def call(env)
  case env['PATH_INFO']
  when RESOURCE_DOC_JSON_MATCHER
    resource_doc = $1
    display_file_or_404(:json, "#{@docs_dir}/#{resource_doc}.json", :resource)

  when ROOT_DOC_JSON_MATCHER
    display_file_or_404(:json, "#{@docs_dir}/swagger.json", :root)

  else
    [404, {}, ["Not found"]]
  end
end