From e7c4b3e57ca4f2555d2bc5ba0af8b0d1c29a0a8f Mon Sep 17 00:00:00 2001
From: Stefano Borini <sborini@enthought.com>
Date: Thu, 17 May 2018 17:03:39 +0100
Subject: [PATCH] ported MCO probe to new API

---
 force_bdss/tests/probe_classes/mco.py | 35 ++++++++++++---------------
 1 file changed, 16 insertions(+), 19 deletions(-)

diff --git a/force_bdss/tests/probe_classes/mco.py b/force_bdss/tests/probe_classes/mco.py
index e739574..d30f6df 100644
--- a/force_bdss/tests/probe_classes/mco.py
+++ b/force_bdss/tests/probe_classes/mco.py
@@ -1,6 +1,5 @@
-from traits.api import Str, Type, Bool, Int, Function
+from traits.api import Bool, Int, Function
 
-from force_bdss.ids import mco_parameter_id, factory_id
 from force_bdss.core.data_value import DataValue
 from force_bdss.api import (
     BaseMCOModel, BaseMCO, BaseMCOFactory,
@@ -36,9 +35,11 @@ class ProbeParameter(BaseMCOParameter):
 
 
 class ProbeParameterFactory(BaseMCOParameterFactory):
-    id = Str(mco_parameter_id("enthought", "test_mco", "test"))
+    def get_identifier(self):
+        return "test"
 
-    model_class = Type(ProbeParameter)
+    def get_model_class(self):
+        return ProbeParameter
 
 
 class ProbeMCOCommunicator(BaseMCOCommunicator):
@@ -58,31 +59,27 @@ class ProbeMCOCommunicator(BaseMCOCommunicator):
 
 
 class ProbeMCOFactory(BaseMCOFactory):
-    id = Str(factory_id("enthought", "test_mco"))
+    nb_output_data_values = Int(0)
 
-    model_class = Type(ProbeMCOModel)
+    def get_identifier(self):
+        return "test_mco"
 
-    communicator_class = Type(ProbeMCOCommunicator)
+    def get_model_class(self):
+        return ProbeMCOModel
 
-    mco_class = Type(ProbeMCO)
+    def get_communicator_class(self):
+        return ProbeMCOCommunicator
 
-    nb_output_data_values = Int(0)
+    def get_optimizer_class(self):
+        return ProbeMCO
 
-    def create_model(self, model_data=None):
-        if model_data is None:
-            model_data = {}
-        return self.model_class(
-            self,
-            **model_data
-        )
+    def get_name(self):
+        return "testmco"
 
     def create_communicator(self):
         return self.communicator_class(
             self,
             nb_output_data_values=self.nb_output_data_values)
 
-    def create_optimizer(self):
-        return self.mco_class(self)
-
     def parameter_factories(self):
         return [ProbeParameterFactory(mco_factory=self)]
-- 
GitLab