summaryrefslogtreecommitdiff
path: root/lib/dataset.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/dataset.rb')
-rw-r--r--lib/dataset.rb13
1 files changed, 6 insertions, 7 deletions
diff --git a/lib/dataset.rb b/lib/dataset.rb
index a48b23f..7c74f39 100644
--- a/lib/dataset.rb
+++ b/lib/dataset.rb
@@ -7,10 +7,9 @@ get "/dataset/?" do
return uri_list.join("\n") + "\n"
when "application/json"
datasets = JSON.parse datasets.to_json
- datasets.each_index do |idx|
- datasets[idx][:URI] = uri("/dataset/#{datasets[idx]["_id"]["$oid"]}")
- end
- return datasets.to_json
+ list = []
+ datasets.each{|d| list << uri("/dataset/#{d["_id"]["$oid"]}")}
+ return list.to_json
else
bad_request_error "Mime type #{@accept} is not supported."
end
@@ -19,7 +18,7 @@ end
# Get a dataset
get "/dataset/:id/?" do
dataset = Dataset.find :id => params[:id]
- resource_not_found_error "Dataset with id: #{params[:id]} not found." unless dataset
+ not_found_error "Dataset with id: #{params[:id]} not found." unless dataset
case @accept
when "application/json"
dataset.data_entries.each do |k, v|
@@ -39,9 +38,9 @@ end
# Get a dataset attribute. One of compounds, nanoparticles, substances, features
get "/dataset/:id/:attribute/?" do
dataset = Dataset.find :id => params[:id]
- resource_not_found_error "Dataset with id: #{params[:id]} not found." unless dataset
+ not_found_error "Dataset with id: #{params[:id]} not found." unless dataset
attribs = ["compounds", "nanoparticles", "substances", "features"]
return "Attribute '#{params[:attribute]}' is not available. Choose one of #{attribs.join(', ')}." unless attribs.include? params[:attribute]
- out = dataset.send(params[:attribute])
+ out = dataset.send("#{params[:attribute]}")
return out.to_json
end