summaryrefslogtreecommitdiff
path: root/lib/algorithm.rb
diff options
context:
space:
mode:
authorChristoph Helma <helma@in-silico.ch>2015-07-18 10:14:16 +0200
committerChristoph Helma <helma@in-silico.ch>2015-07-18 10:14:16 +0200
commit52fef792922c59d102825193fff05be9c3fa88a8 (patch)
tree72f263e8b4e0ed8970cc3783f8e40956259c8841 /lib/algorithm.rb
parent1c74a684b8b2992d7e6fce5f1a4677d397ec4dd6 (diff)
initial algorithm changes
Diffstat (limited to 'lib/algorithm.rb')
-rw-r--r--lib/algorithm.rb10
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/algorithm.rb b/lib/algorithm.rb
index bd4e54a..8f05d6a 100644
--- a/lib/algorithm.rb
+++ b/lib/algorithm.rb
@@ -16,11 +16,17 @@ module OpenTox
class Generic
include OpenTox
include Algorithm
+ include Mongoid::Document
+ include Mongoid::Timestamps
+ field :parameters, type: Array
end
class Descriptor
include OpenTox
include Algorithm
+ include Mongoid::Document
+ include Mongoid::Timestamps
+ field :parameters, type: Array
[:smarts_match,:smarts_count,:physchem,:lookup].each do |descriptor|
Descriptor.define_singleton_method(descriptor) do |compounds,descriptors=nil|
@@ -31,7 +37,9 @@ module OpenTox
bad_request_error "First argument contains objects with a different class than OpenTox::Compound or OpenTox::Dataset #{klasses.inspect}" unless klasses.size == 1 and klasses.first == Compound
JSON.parse(Descriptor.new(File.join(self.service_uri, "descriptor", descriptor.to_s)).run(:compound_uri => compounds.collect{|c| c.uri}, :descriptors => descriptors))
when "OpenTox::Compound"
- JSON.parse(Descriptor.new(File.join(self.service_uri, "descriptor", descriptor.to_s)).run(:compound_uri => compounds.uri, :descriptors => descriptors))
+ p descriptor.to_s
+ send descriptor.to_sym, compounds
+ #JSON.parse(Descriptor.new(File.join(self.service_uri, "descriptor", descriptor.to_s)).run(:compound_uri => compounds.uri, :descriptors => descriptors))
when "OpenTox::Dataset"
task_uri = Descriptor.new(File.join(self.service_uri, "descriptor", descriptor.to_s)).run(:dataset_uri => compounds.uri, :descriptors => descriptors)
Dataset.new(wait_for_task task_uri)