Files
old-pruning-excersise/lib/api/app.rb
2018-08-13 18:54:12 +02:00

40 lines
862 B
Ruby

require 'json'
require 'sinatra/base'
require 'sinatra/custom_logger'
require_relative '../http/query'
require_relative '../exceptions'
module Pruning
module API
# Handles general concers regarding API calls
class App < Sinatra::Base
before { content_type :json }
after { serialise_response }
set :show_exceptions, true
error Pruning::Exceptions::UnexpectedError do
status 500
end
error Pruning::Exceptions::OriginCannotFindTheResource do
status 404
end
get '/' do
'Try /tree/:name?indicator_ids[]=32&indicator_ids[]=31'
end
private
def serialise_response
return unless content_type == 'application/json'
response.body = [JSON(response.body)]
end
def query
Pruning::HTTP::Query.new(params)
end
end
end
end