diff options
Diffstat (limited to 'lib/report.rb')
-rw-r--r-- | lib/report.rb | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/lib/report.rb b/lib/report.rb new file mode 100644 index 0000000..7c06d60 --- /dev/null +++ b/lib/report.rb @@ -0,0 +1,29 @@ +# Get a list of all possible reports to prediction models +# @param [Header] Accept one of text/uri-list, +# @return [text/uri-list] list of all prediction models +get "/api/report/?" do + models = Model::Validation.all + case @accept + when "text/uri-list" + uri_list = models.collect{|model| uri("/api/report/#{model.model_id}")} + return uri_list.join("\n") + "\n" + when "application/json" + models = JSON.parse models.to_json + list = [] + models.each{|m| list << uri("/api/report/#{m["_id"]["$oid"]}")} + return list.to_json + else + halt 400, "Mime type #{@accept} is not supported." + end +end + +get "/api/report/:id/?" do + case @accept + when "application/xml" + report = qmrf_report params[:id] + return report.to_xml + else + halt 400, "Mime type #{@accept} is not supported." + end + +end |