diff options
author | rautenberg <rautenberg@in-silico.ch> | 2016-09-07 10:30:44 +0200 |
---|---|---|
committer | rautenberg <rautenberg@in-silico.ch> | 2016-09-07 10:30:44 +0200 |
commit | b24c662df429b65f49c6e72782290c9e977f671a (patch) | |
tree | 1711c6e548afb2bbb7d1140c1fe890560bb571ae /lib | |
parent | 0584ef8899fc89d861be25de62b8417a543cfa82 (diff) |
add text/csv to get a dataset
Diffstat (limited to 'lib')
-rw-r--r-- | lib/dataset.rb | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/lib/dataset.rb b/lib/dataset.rb index ff16640..1468c8d 100644 --- a/lib/dataset.rb +++ b/lib/dataset.rb @@ -20,14 +20,20 @@ end get "/dataset/:id/?" do dataset = Dataset.find :id => params[:id] resource_not_found_error "Dataset with id: #{params[:id]} not found." unless dataset - dataset.data_entries.each do |k, v| - dataset.data_entries[k][:URI] = uri("/substance/#{k}") + case @accept + when "application/json" + dataset.data_entries.each do |k, v| + dataset.data_entries[k][:URI] = uri("/substance/#{k}") + end + dataset[:URI] = uri("/dataset/#{dataset.id}") + dataset[:substances] = uri("/dataset/#{dataset.id}/substances") + dataset[:features] = uri("/dataset/#{dataset.id}/features") + return dataset.to_json + when "text/csv" + return dataset.to_csv + else + bad_request_error "Mime type #{@accept} is not supported." end - - dataset[:URI] = uri("/dataset/#{dataset.id}") - dataset[:substances] = uri("/dataset/#{dataset.id}/substances") - dataset[:features] = uri("/dataset/#{dataset.id}/features") - return dataset.to_json end # Get a dataset attribute. One of compounds, nanoparticles, substances, features |