summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormguetlein <martin.guetlein@gmail.com>2010-11-30 10:28:36 +0100
committermguetlein <martin.guetlein@gmail.com>2010-11-30 10:28:36 +0100
commit7459525cbf5cc8ed4afcbaa3a0749828098a8f48 (patch)
tree53d5f4a911f9cbc6bb42c4449ae8a0c99c22aa57
parentfc0b77cd271aae16acd0dbabedf30af140f58442 (diff)
fix validation_type for example
-rw-r--r--lib/validation_db.rb4
-rw-r--r--validation/validation_service.rb12
2 files changed, 6 insertions, 10 deletions
diff --git a/lib/validation_db.rb b/lib/validation_db.rb
index 9a9c927..cb3ece7 100644
--- a/lib/validation_db.rb
+++ b/lib/validation_db.rb
@@ -56,8 +56,6 @@ module Lib
alias_attribute :date, :created_at
def validation_uri
- self.save! if self.id==nil
- raise "internal error, validation-id not set "+to_yaml if self.id==nil
$sinatra.url_for("/"+self.id.to_s, :full)
end
@@ -83,8 +81,6 @@ module Lib
alias_attribute :date, :created_at
def crossvalidation_uri
- self.save! if self.id==nil
- raise "internal error, crossvalidation-id not set" if self.id==nil
$sinatra.url_for("/crossvalidation/"+self.id.to_s, :full) if self.id
end
diff --git a/validation/validation_service.rb b/validation/validation_service.rb
index 5150932..7204699 100644
--- a/validation/validation_service.rb
+++ b/validation/validation_service.rb
@@ -39,12 +39,8 @@ module Validation
$sinatra.halt 500,"do not set id manually" if params[:id]
params[:finished] = false
super params
- end
-
- def save!
- # make sure that validation objects have a valiation_type
- $sinatra.halt 500,"validation_type missing" unless self.validation_type
- super
+ self.save!
+ raise "internal error, validation-id not set "+to_yaml if self.id==nil
end
# deletes a validation
@@ -66,6 +62,7 @@ module Validation
# validates an algorithm by building a model and validating this model
def validate_algorithm( algorithm_params=nil, task=nil )
+ $sinatra.halt 500,"validation_type missing" unless self.validation_type
$sinatra.halt 404, "no algorithm uri: '"+self.algorithm_uri.to_s+"'" if self.algorithm_uri==nil or self.algorithm_uri.to_s.size<1
params = { :dataset_uri => self.training_dataset_uri, :prediction_feature => self.prediction_feature }
@@ -95,6 +92,7 @@ module Validation
# PENDING: a new dataset is created to store the predictions, this should be optional: delete predictions afterwards yes/no
def validate_model( task=nil )
+ $sinatra.halt 500,"validation_type missing" unless self.validation_type
LOGGER.debug "validating model '"+self.model_uri+"'"
model = OpenTox::Model::PredictionModel.find(self.model_uri)
@@ -179,6 +177,8 @@ module Validation
params[:stratified] = false if params[:stratified]==nil
params[:finished] = false
super params
+ self.save!
+ raise "internal error, crossvalidation-id not set" if self.id==nil
end
def perform_cv ( prediction_feature, algorithm_params=nil, task=nil )