[ML][Train] Unify thrown exceptions and some fixes. 02/274202/1 accepted/tizen/unified/20220426.212701 submit/tizen/20220426.102724
authorMarcin Bialek <m.bialek@samsung.com>
Sat, 23 Apr 2022 14:11:51 +0000 (16:11 +0200)
committerMarcin Bialek <m.bialek@samsung.com>
Sat, 23 Apr 2022 14:11:51 +0000 (16:11 +0200)
All dispose() methods threw NotFoundError if a model/layer/optimizer/dataset did not exist but other methods threw AbortError in the same situation. Fixed some misspelled exception names as well.

[Verification] Code compiles. The modified methods were manually tested for thrown exceptions.

Change-Id: I9c06ce22dab5a28a6cf268712f5aed83d08dc27e
Signed-off-by: Marcin Bialek <m.bialek@samsung.com>
src/ml/js/ml_trainer.js
src/ml/ml_trainer_manager.cc

index 8087681..7938d95 100755 (executable)
@@ -111,6 +111,7 @@ var ValidSetPropertyExceptions = [
     'InvalidValuesError',
     'NotSupportedError',
     'TypeMismatchError',
+    'NotFoundError',
     'AbortError'
 ];
 
@@ -316,6 +317,7 @@ function ValidateCompileOptions(options) {
 var ValidModelCompileExceptions = [
     'InvalidValuesError',
     'TypeMismatchError',
+    'NotFoundError',
     'NoModificationAllowedError',
     'AbortError'
 ];
@@ -367,6 +369,7 @@ function ValidateRunOptions(options) {
 
 var ValidModelRunExceptions = [
     'InvalidValuesError',
+    'NotFoundError',
     'InvalidStateError',
     'TypeMismatchError',
     'AbortError'
@@ -428,6 +431,7 @@ Model.prototype.run = function() {
 
 var ValidBasicExceptions = [
     'TypeMismatchError',
+    'NotFoundError',
     'AbortError'
 ];
 
@@ -487,7 +491,8 @@ Model.prototype._checkMetrics = function (trainLoss, validLoss, validAccuracy) {
 var ValidModelSaveExceptions = [
     'InvalidValuesError',
     'TypeMismatchError',
-    "NoModificationAllowedError",
+    'NotFoundError',
+    'NoModificationAllowedError',
     'AbortError'
 ];
 
@@ -553,11 +558,11 @@ Model.prototype.load = function () {
     try {
         callArgs.savePath = tizen.filesystem.toURI(args.path);
     } catch (e) {
-        throw new WebAPIException(WebAPIException.InvalidValuesError, 'Invalid file path given');
+        throw new WebAPIException(WebAPIException.INVALID_VALUES_ERR, 'Invalid file path given');
     }
 
     if (!tizen.filesystem.pathExists(callArgs.savePath)) {
-        throw new WebAPIException(WebAPIException.NotFoundError, 'Path not found');
+        throw new WebAPIException(WebAPIException.NOT_FOUND_ERR, 'Path not found');
     }
 
     var result = native_.callSync('MLTrainerModelLoad', callArgs);
@@ -607,7 +612,7 @@ var ValidSetObjectExceptions = [
     'TypeMismatchError',
     'NoModificationAllowedError',
     'NotSupportedError',
-    'NotFound',
+    'NotFoundError',
     'AbortError'
 ];
 
index 22805e8..9b81d66 100644 (file)
@@ -77,7 +77,7 @@ PlatformResult TrainerManager::ModelCompile(int id,
 
   if (models_.find(id) == models_.end()) {
     LoggerE("Could not find model with id: %d", id);
-    return PlatformResult(ErrorCode::ABORT_ERR, "Could not find model");
+    return PlatformResult(ErrorCode::NOT_FOUND_ERR, "Could not find model");
   }
 
   auto& model = models_[id];
@@ -138,7 +138,7 @@ PlatformResult TrainerManager::ModelRun(int id,
   if (models_.find(id) == models_.end()) {
     LoggerE("Could not find model with id: %d", id);
     models_map_lock_.unlock();
-    return PlatformResult(ErrorCode::ABORT_ERR, "Could not find model");
+    return PlatformResult(ErrorCode::NOT_FOUND_ERR, "Could not find model");
   }
 
   auto& model = models_[id];
@@ -195,7 +195,7 @@ PlatformResult TrainerManager::ModelAddLayer(int id, int layerId) {
 
   if (models_.find(id) == models_.end()) {
     LoggerE("Could not find model with id: %d", id);
-    return PlatformResult(ErrorCode::ABORT_ERR, "Could not find model");
+    return PlatformResult(ErrorCode::NOT_FOUND_ERR, "Could not find model");
   }
 
   auto& model = models_[id];
@@ -209,7 +209,7 @@ PlatformResult TrainerManager::ModelAddLayer(int id, int layerId) {
   if (layers_.find(layerId) == layers_.end()) {
     LoggerE("Could not find layer with id: %d", id);
     model->instanceLock.unlock();
-    return PlatformResult(ErrorCode::ABORT_ERR, "Could not find layer");
+    return PlatformResult(ErrorCode::NOT_FOUND_ERR, "Could not find layer");
   }
 
   auto& layer = layers_[layerId];
@@ -243,7 +243,7 @@ PlatformResult TrainerManager::ModelSetOptimizer(int id, int optimizerId) {
 
   if (models_.find(id) == models_.end()) {
     LoggerE("Could not find model with id: %d", id);
-    return PlatformResult(ErrorCode::ABORT_ERR, "Could not find model");
+    return PlatformResult(ErrorCode::NOT_FOUND_ERR, "Could not find model");
   }
 
   auto& model = models_[id];
@@ -257,7 +257,7 @@ PlatformResult TrainerManager::ModelSetOptimizer(int id, int optimizerId) {
   if (optimizers_.find(optimizerId) == optimizers_.end()) {
     LoggerE("Could not find optimizer with id: %d", id);
     model->instanceLock.unlock();
-    return PlatformResult(ErrorCode::ABORT_ERR, "Could not find optimizer");
+    return PlatformResult(ErrorCode::NOT_FOUND_ERR, "Could not find optimizer");
   }
 
   auto& optimizer = optimizers_[optimizerId];
@@ -318,7 +318,7 @@ PlatformResult TrainerManager::ModelSetDataset(int id, int datasetId) {
   if (datasets_.find(datasetId) == datasets_.end()) {
     LoggerE("Could not find dataset with id: %d", id);
     model->instanceLock.unlock();
-    return PlatformResult(ErrorCode::ABORT_ERR, "Could not find dataset");
+    return PlatformResult(ErrorCode::NOT_FOUND_ERR, "Could not find dataset");
   }
 
   auto& dataset = datasets_[datasetId];
@@ -359,7 +359,7 @@ PlatformResult TrainerManager::ModelSummarize(int id,
 
   if (models_.find(id) == models_.end()) {
     LoggerE("Could not find model with id: %d", id);
-    return PlatformResult(ErrorCode::ABORT_ERR, "Could not find model");
+    return PlatformResult(ErrorCode::NOT_FOUND_ERR, "Could not find model");
   }
 
   auto& model = models_[id];
@@ -455,7 +455,7 @@ PlatformResult TrainerManager::ModelSave(int id, const std::string& path,
 
   if (models_.find(id) == models_.end()) {
     LoggerE("Could not find model with id: %d", id);
-    return PlatformResult(ErrorCode::ABORT_ERR, "Could not find model");
+    return PlatformResult(ErrorCode::NOT_FOUND_ERR, "Could not find model");
   }
 
   auto& model = models_[id];
@@ -493,7 +493,7 @@ PlatformResult TrainerManager::ModelLoad(int id, const std::string& path,
 
   if (models_.find(id) == models_.end()) {
     LoggerE("Could not find model with id: %d", id);
-    return PlatformResult(ErrorCode::ABORT_ERR, "Could not find model");
+    return PlatformResult(ErrorCode::NOT_FOUND_ERR, "Could not find model");
   }
 
   auto& model = models_[id];
@@ -606,7 +606,7 @@ PlatformResult TrainerManager::LayerSetProperty(int id,
 
   if (layers_.find(id) == layers_.end()) {
     LoggerE("Could not find layer with id: %d", id);
-    return PlatformResult(ErrorCode::ABORT_ERR, "Could not find layer");
+    return PlatformResult(ErrorCode::NOT_FOUND_ERR, "Could not find layer");
   }
 
   auto layer = layers_[id];
@@ -701,7 +701,7 @@ PlatformResult TrainerManager::OptimizerSetProperty(int id,
 
   if (optimizers_.find(id) == optimizers_.end()) {
     LoggerE("Could not find optimizer with id: %d", id);
-    return PlatformResult(ErrorCode::ABORT_ERR, "Could not find optimizer");
+    return PlatformResult(ErrorCode::NOT_FOUND_ERR, "Could not find optimizer");
   }
 
   auto optimizer = optimizers_[id];
@@ -831,7 +831,7 @@ PlatformResult TrainerManager::DatasetSetProperty(
 
   if (datasets_.find(id) == datasets_.end()) {
     LoggerE("Could not find dataset with id: %d", id);
-    return PlatformResult(ErrorCode::ABORT_ERR, "Could not find dataset");
+    return PlatformResult(ErrorCode::NOT_FOUND_ERR, "Could not find dataset");
   }
 
   auto dataset = datasets_[id];