From 0eac1bd28b3b8103b91ccb00343b5a4f999f4447 Mon Sep 17 00:00:00 2001
From: Stefano Borini <sborini@enthought.com>
Date: Tue, 11 Jul 2017 15:12:31 +0100
Subject: [PATCH] Added name for the MCO and changed name for basic MCO

---
 examples/test_workflow.json                         | 2 +-
 force_bdss/basic_multi_criteria_optimizer.py        | 4 ++--
 force_bdss/i_multi_criteria_optimizers.py           | 6 ++++--
 force_bdss/workspecs/multi_criteria_optimization.py | 2 +-
 4 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/examples/test_workflow.json b/examples/test_workflow.json
index 49c04bc..4def5bb 100644
--- a/examples/test_workflow.json
+++ b/examples/test_workflow.json
@@ -1,6 +1,6 @@
 {
     "multi_criteria_optimization": {
-        "type": "simple"
+        "name": "basic"
     }
 }
 
diff --git a/force_bdss/basic_multi_criteria_optimizer.py b/force_bdss/basic_multi_criteria_optimizer.py
index 5d9088b..fd56077 100644
--- a/force_bdss/basic_multi_criteria_optimizer.py
+++ b/force_bdss/basic_multi_criteria_optimizer.py
@@ -7,9 +7,9 @@ from force_bdss.i_multi_criteria_optimizers import IMultiCriteriaOptimizer
 
 @provides(IMultiCriteriaOptimizer)
 class BasicMultiCriteriaOptimizer(HasStrictTraits):
+    name = "basic"
+
     def run(self, application):
         print("Basic multicriteria optimizer in action")
         subprocess.check_call([sys.argv[0], "--evaluate",
                                application.workflow_filepath])
-
-
diff --git a/force_bdss/i_multi_criteria_optimizers.py b/force_bdss/i_multi_criteria_optimizers.py
index a04bf6b..93c6b25 100644
--- a/force_bdss/i_multi_criteria_optimizers.py
+++ b/force_bdss/i_multi_criteria_optimizers.py
@@ -1,6 +1,8 @@
-from traits.api import Interface
+from traits.api import Interface, String
 
 
 class IMultiCriteriaOptimizer(Interface):
-    def run(self):
+    name = String()
+
+    def run(self, application):
         pass
diff --git a/force_bdss/workspecs/multi_criteria_optimization.py b/force_bdss/workspecs/multi_criteria_optimization.py
index 6d0a06a..3433730 100644
--- a/force_bdss/workspecs/multi_criteria_optimization.py
+++ b/force_bdss/workspecs/multi_criteria_optimization.py
@@ -7,7 +7,7 @@ class MultiCriteriaOptimization(HasStrictTraits):
     @classmethod
     def from_json(cls, json_data):
         self = cls(
-            type=json_data["type"]
+            name=json_data["name"]
         )
 
         return self
-- 
GitLab