summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormr <mr@mrautenberg.de>2010-05-14 10:41:48 +0200
committermr <mr@mrautenberg.de>2010-05-14 10:41:48 +0200
commitfdfa5b642f47ec9cdbe8a35163fad15d45b7cb21 (patch)
tree5d484e52aedb451afa4a336bc211c20e01af7b98
parentba2d357cd97b41d9e305e2b24249509b75a47bef (diff)
parentd4bfeb61ad7b738e0898267668dc22e3fcfde925 (diff)
Merge commit 'helma/master' into test
-rw-r--r--Rakefile2
-rw-r--r--application.rb26
2 files changed, 19 insertions, 9 deletions
diff --git a/Rakefile b/Rakefile
index 2b5727a..21e8bdf 100644
--- a/Rakefile
+++ b/Rakefile
@@ -2,7 +2,7 @@ require 'rubygems'
require 'rake'
require 'tasks/opentox'
-@gems = "sinatra emk-sinatra-url-for builder opentox-ruby-api-wrapper"
+@gems = "sinatra emk-sinatra-url-for opentox-ruby-api-wrapper"
desc "Run local tests"
task :test do
diff --git a/application.rb b/application.rb
index 0702758..c7ad2a4 100644
--- a/application.rb
+++ b/application.rb
@@ -1,5 +1,5 @@
require 'rubygems'
-gem 'opentox-ruby-api-wrapper', '= 1.4.0'
+gem 'opentox-ruby-api-wrapper', '= 1.5.0'
require 'opentox-ruby-api-wrapper'
#require 'sinatra/respond_to'
#Sinatra::Application.register Sinatra::RespondTo
@@ -18,12 +18,19 @@ class Dataset
def to_owl
data = YAML.load(yaml)
- owl = OpenTox::Owl.new 'Dataset', uri
+ owl = OpenTox::Owl.create 'Dataset', uri
+ owl.set "title", data.title
+ #owl.set "source", data.source
+=begin
['title', 'source'].each do |method|
- eval "owl.#{method} = data.#{method}"
+ #eval "owl.#{method} = data.#{method}"
+ owl.set(method, "data.#{method}"
end
- data.data.each do |compound,features|
- owl.add_data_entries compound,features
+=end
+ if data.data
+ data.data.each do |compound,features|
+ owl.add_data_entries compound,features
+ end
end
owl.rdf
end
@@ -60,10 +67,10 @@ get '/:id' do
begin
dataset = Dataset.get(params[:id])
rescue => e
- LOGGER.error e.message
- LOGGER.warn e.backtrace
+ raise e.message + e.backtrace
halt 404, "Dataset #{params[:id]} not found."
end
+ halt 404, "Dataset #{params[:id]} not found." if dataset.nil? # not sure how an empty cataset can be returned, but if this happens stale processes keep runing at 100% cpo
case accept
when /rdf/ # redland sends text/rdf instead of application/rdf+xml
response['Content-Type'] = 'application/rdf+xml'
@@ -134,7 +141,9 @@ post '/?' do
halt 404, "MIME type \"#{request.content_type}\" not supported."
end
begin
- dataset.save
+ #dataset.owl = d.rdf
+ #dataset.uri = uri
+ raise "saving failed: "+dataset.errors.inspect unless dataset.save
rescue => e
LOGGER.error e.message
LOGGER.info e.backtrace
@@ -157,6 +166,7 @@ delete '/:id/?' do
end
delete '/?' do
+
Dataset.all.each do |d|
begin
File.delete d.file