From 52fef792922c59d102825193fff05be9c3fa88a8 Mon Sep 17 00:00:00 2001 From: Christoph Helma Date: Sat, 18 Jul 2015 10:14:16 +0200 Subject: initial algorithm changes --- lib/algorithm.rb | 10 +++++++++- lib/opentox.rb | 1 + 2 files changed, 10 insertions(+), 1 deletion(-) 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) diff --git a/lib/opentox.rb b/lib/opentox.rb index 96cefe0..68a841b 100644 --- a/lib/opentox.rb +++ b/lib/opentox.rb @@ -15,6 +15,7 @@ module OpenTox field :title, type: String field :description, type: String + field :parameters, type: Array # TODO check if needed def self.subjectid -- cgit v1.2.3