summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorChristoph Helma <helma@in-silico.ch>2012-03-19 18:57:31 +0100
committerChristoph Helma <helma@in-silico.ch>2012-03-19 18:57:31 +0100
commitfc990e6dae8af7cfdf7d12b4e1d9ccd3b557418a (patch)
tree9b1827e350da96266bade1ccccdab2af7c87d3e4 /lib
parent2fd7dcb2d011e3a2029de56f48aca5722685ee80 (diff)
libraptor1-dev dependency added
Diffstat (limited to 'lib')
-rw-r--r--lib/error.rb5
-rw-r--r--lib/opentox-client.rb2
-rw-r--r--lib/overwrite.rb4
-rw-r--r--lib/task.rb1
4 files changed, 6 insertions, 6 deletions
diff --git a/lib/error.rb b/lib/error.rb
index cc87f47..e12f140 100644
--- a/lib/error.rb
+++ b/lib/error.rb
@@ -45,8 +45,7 @@ module OpenTox
OpenTox.const_set klass,c
# define global methods for raising errors, eg. bad_request_error
- Object.send(:define_method, klass.underscore.to_sym) do |message|
- defined?(@uri) ? uri = @uri : uri=nil
+ Object.send(:define_method, klass.underscore.to_sym) do |message,uri=nil|
raise c, message, uri
end
end
@@ -65,7 +64,6 @@ module OpenTox
class ErrorReport
def initialize http_code, error
@http_code = http_code
- #@report = report#.to_yaml
@report = {}
@report[RDF::OT.actor] = error.uri.to_s
@report[RDF::OT.message] = error.message.to_s
@@ -95,6 +93,7 @@ module OpenTox
# TODO: not used for turtle
# http://rdf.rubyforge.org/RDF/Writer.html#
writer.prefix :ot, RDF::URI('http://www.opentox.org/api/1.2#')
+ writer.prefix :ot1_1, RDF::URI('http://www.opentox.org/api/1.1#')
subject = RDF::Node.new
@report.each do |predicate,object|
writer << [subject, predicate, object] if object
diff --git a/lib/opentox-client.rb b/lib/opentox-client.rb
index 8616995..dec3512 100644
--- a/lib/opentox-client.rb
+++ b/lib/opentox-client.rb
@@ -26,6 +26,8 @@ FALSE_REGEXP = /^(false|inactive|0|0.0|low tox|deactivating|non-carcinogen|non-m
require File.join(File.dirname(__FILE__),"overwrite.rb")
require File.join(File.dirname(__FILE__),"error.rb")
require File.join(File.dirname(__FILE__),"rest-client-wrapper.rb")
+require File.join(File.dirname(__FILE__),"authorization.rb")
+require File.join(File.dirname(__FILE__),"policy.rb")
require File.join(File.dirname(__FILE__),"otlogger.rb") # avoid require conflicts with logger
require File.join(File.dirname(__FILE__),"opentox.rb")
require File.join(File.dirname(__FILE__),"task.rb")
diff --git a/lib/overwrite.rb b/lib/overwrite.rb
index 97c35aa..e3f72ad 100644
--- a/lib/overwrite.rb
+++ b/lib/overwrite.rb
@@ -64,10 +64,8 @@ module Kernel
stdout = stdout_stream.read
stderr = stderr_stream.read
end
- raise stderr.strip if !status.success?
+ internal_server_error stdout + stderr if !status.success?
return stdout
- rescue Exception
- internal_server_error $!
end
alias_method :system!, :system
diff --git a/lib/task.rb b/lib/task.rb
index 7452012..f19a918 100644
--- a/lib/task.rb
+++ b/lib/task.rb
@@ -15,6 +15,7 @@ module OpenTox
result_uri = yield
task.completed result_uri
rescue
+ puts $!.report.to_yaml
RestClientWrapper.put(File.join(task.uri,'Error'),{:errorReport => $!.report.to_yaml}) if $!.respond_to? :report
task.kill
end