diff options
author | mr <mr@mrautenberg.de> | 2011-02-01 17:56:16 +0100 |
---|---|---|
committer | mr <mr@mrautenberg.de> | 2011-02-01 17:56:16 +0100 |
commit | a9d8b84a2872ae354bba0ea50c1915e96d69d824 (patch) | |
tree | 62e5da59160d33a4588967afc8348eeb6d517b66 | |
parent | 57ac5838f03a4107cb1ea3056c8249dd20f21ee4 (diff) |
a&a for validation
-rw-r--r-- | application.rb | 33 | ||||
-rw-r--r-- | config.ru | 2 |
2 files changed, 20 insertions, 15 deletions
diff --git a/application.rb b/application.rb index abc180f..7b03948 100644 --- a/application.rb +++ b/application.rb @@ -28,13 +28,16 @@ helpers do private def delete_model(model, subjectid=nil) - begin RestClient.put(File.join(model.task_uri, 'Cancelled'),subjectid) if model.task_uri rescue LOGGER.warn "Can not cancel task #{model.task_uri}" end - delete_dependent(model.uri, subjectid) if model.uri - delete_dependent(model.validation_uri, subjectid) if model.validation_uri - delete_dependent(model.validation_report_uri, subjectid) if model.validation_report_uri - delete_dependent(model.validation_qmrf_uri, subjectid) if model.validation_qmrf_uri - delete_dependent(model.training_dataset, subjectid) if model.training_dataset - delete_dependent(model.feature_dataset, subjectid) if model.feature_dataset + task = OpenTox::Task.create("Deleting model: #{model.uri}",url_for("/delete",:full)) do + begin RestClient.put(File.join(model.task_uri, 'Cancelled'),subjectid) if model.task_uri rescue LOGGER.warn "Can not cancel task #{model.task_uri}" end + delete_dependent(model.uri, subjectid) if model.uri + delete_dependent(model.validation_uri, subjectid) if model.validation_uri + delete_dependent(model.validation_report_uri, subjectid) if model.validation_report_uri + delete_dependent(model.validation_qmrf_uri, subjectid) if model.validation_qmrf_uri + delete_dependent(model.training_dataset, subjectid) if model.training_dataset + delete_dependent(model.feature_dataset, subjectid) if model.feature_dataset + "" + end end def delete_dependent(uri, subjectid=nil) @@ -229,9 +232,10 @@ post '/models' do # create a new model unless url_for("",:full).match(/localhost/) @model.update :status => "Validating model" + LOGGER.debug "mr ::: #{lazar.metadata.inspect}" begin validation = OpenTox::Validation.create_crossvalidation( - :algorithm_uri => OpenTox::Algorithm::Lazar.uri, + :algorithm_uri => lazar.metadata[OT.algorithm], :dataset_uri => lazar.parameter("dataset_uri"), :subjectid => subjectid, :prediction_feature => lazar.parameter("prediction_feature"), @@ -243,22 +247,22 @@ post '/models' do # create a new model LOGGER.debug "Model validation failed with #{e.message}." @model.warnings += "Model validation failed with #{e.message}." end - # create summary - validation.summary(@model.type).each{|k,v| eval "@model.#{k.to_s} = v"} + validation.summary(@model.type, subjectid).each do |k,v| + LOGGER.debug "mr ::: k: #{k.inspect} - v: #{v.inspect}" + eval "@model.#{k.to_s} = v" + end @model.save - @model.update :status => "Creating validation report" begin - @model.update(:validation_report_uri => validation.create_report) + @model.update(:validation_report_uri => validation.create_report(subjectid)) rescue => e LOGGER.debug "Validation report generation failed with #{e.message}." @model.warnings += "Validation report generation failed with #{e.message}." end - @model.update :status => "Creating QMRF report" begin - @model.update(:validation_qmrf_report_uri => validation.create_qmrf_report) + @model.update(:validation_qmrf_report_uri => validation.create_qmrf_report(subjectid)) rescue => e LOGGER.debug "Validation QMRF report generation failed with #{e.message}." @model.warnings += "Validation QMRF report generation failed with #{e.message}." @@ -266,7 +270,6 @@ post '/models' do # create a new model end - #@model.warnings += "<p>Incorrect Smiles structures (ignored):</p>" + parser.smiles_errors.join("<br/>") unless parser.smiles_errors.empty? #@model.warnings += "<p>Irregular activities (ignored):</p>" + parser.activity_errors.join("<br/>") unless parser.activity_errors.empty? #duplicate_warnings = '' @@ -3,3 +3,5 @@ require 'opentox-ruby' require 'config/config_ru' set :app_file, __FILE__ # to get the view path right run Sinatra::Application +set :raise_errors, false +set :show_exceptions, false
\ No newline at end of file |