From a54db46684680d98311631804eca367cc949a715 Mon Sep 17 00:00:00 2001 From: Christoph Helma Date: Tue, 26 Mar 2013 10:56:04 +0100 Subject: code cleanup and refactoring. --- lib/model.rb | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'lib/model.rb') diff --git a/lib/model.rb b/lib/model.rb index c104e64..144c8c3 100644 --- a/lib/model.rb +++ b/lib/model.rb @@ -11,5 +11,36 @@ module OpenTox wait_for_task uri if wait end + def feature_type # CH: subjectid is a object variable, no need to pass it as a parameter + unless @feature_type + get unless metadata[OT.dependentVariables.to_s] + bad_request_error "Cannot determine feature type, dependent variable missing in model #{@uri}" unless metadata[OT.dependentVariables.to_s] + @feature_type = OpenTox::Feature.new( metadata[OT.dependentVariables.to_s][0], @subjectid ).feature_type + end + @feature_type + end + + def predicted_variable + load_predicted_variables unless defined? @predicted_variable + @predicted_variable + end + + def predicted_confidence + load_predicted_variables unless defined? @predicted_confidence + @predicted_confidence + end + + private + def load_predicted_variables + metadata[OT.predictedVariables.to_s].each do |f| + feat = OpenTox::Feature.find( f, @subjectid ) + if feat.title =~ /confidence/ + @predicted_confidence = f + else + @predicted_variable = f unless @predicted_variable + end + end + end + end end -- cgit v1.2.3