blob: 66b7ab28b2af5255790101be4803bf6078e43ce5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
# Get a list of all endpoints
# @param [Header] Accept one of text/uri-list,
# @return [text/uri-list] list of all prediction models
get "/api/endpoint/?" do
models = Model::Validation.all
endpoints = models.collect{|m| m.endpoint}.uniq
case @accept
when "text/uri-list"
return endpoints.join("\n") + "\n"
when "application/json"
return endpoints.to_json
else
halt 400, "Mime type #{@accept} is not supported."
end
end
get "/api/endpoint/:endpoint/?" do
models = Model::Validation.where(endpoint: params[:endpoint])
list = []
models.each{|m| list << {m.species => uri("/api/model/#{m.id}")} }
halt 404, "Endpoint: #{params[:endpoint]} not found." if models.blank?
return list.to_json
end
|