diff --git a/force_bdss/api.py b/force_bdss/api.py index 68364b6fe39edb4b8ff609b45822998a676a6010..9f2e4ba58c05670afed30872399fc184374c5a94 100644 --- a/force_bdss/api.py +++ b/force_bdss/api.py @@ -1,5 +1,5 @@ from .base_extension_plugin import BaseExtensionPlugin # noqa -from .ids import bundle_id # noqa +from .ids import bundle_id, plugin_id # noqa from .data_sources.base_data_source_model import BaseDataSourceModel # noqa from .data_sources.data_source_result import DataSourceResult # noqa diff --git a/force_bdss/core_evaluation_driver.py b/force_bdss/core_evaluation_driver.py index 61dac3e0e6bb28028fd973002dc6086d006c6ff6..d8a4fbba8d940a810f78f36904987ee718a03ba2 100644 --- a/force_bdss/core_evaluation_driver.py +++ b/force_bdss/core_evaluation_driver.py @@ -3,17 +3,21 @@ from __future__ import print_function import sys from traits.api import on_trait_change +from .ids import plugin_id from .base_core_driver import BaseCoreDriver from .io.workflow_reader import ( InvalidVersionException, InvalidFileException ) +CORE_EVALUATION_DRIVER_ID = plugin_id("core", "CoreEvaluationDriver") + class CoreEvaluationDriver(BaseCoreDriver): """Main plugin that handles the execution of the MCO or the evaluation. """ + id = CORE_EVALUATION_DRIVER_ID @on_trait_change("application:started") def application_started(self): diff --git a/force_bdss/core_mco_driver.py b/force_bdss/core_mco_driver.py index 07973ccbf329a5da5d0cd318cfe4fa623978b6e9..bf22630639377c2c42a303bba9638425b221dd24 100644 --- a/force_bdss/core_mco_driver.py +++ b/force_bdss/core_mco_driver.py @@ -4,17 +4,21 @@ import sys from traits.api import on_trait_change +from .ids import plugin_id from .base_core_driver import BaseCoreDriver from .io.workflow_reader import ( InvalidVersionException, InvalidFileException ) +CORE_MCO_DRIVER_ID = plugin_id("core", "CoreMCODriver") + class CoreMCODriver(BaseCoreDriver): """Main plugin that handles the execution of the MCO or the evaluation. """ + id = CORE_MCO_DRIVER_ID @on_trait_change("application:started") def application_started(self): diff --git a/force_bdss/core_plugins/dummy/dummy_plugin.py b/force_bdss/core_plugins/dummy/dummy_plugin.py index 3eca5b37262bfaab0416ee01c82e5287e5455a2f..f77b4dc843ff58883933f2acc89cce795703439d 100644 --- a/force_bdss/core_plugins/dummy/dummy_plugin.py +++ b/force_bdss/core_plugins/dummy/dummy_plugin.py @@ -1,4 +1,4 @@ -from force_bdss.api import BaseExtensionPlugin +from force_bdss.api import BaseExtensionPlugin, plugin_id from .csv_extractor.csv_extractor_bundle import CSVExtractorBundle from .kpi_adder.kpi_adder_bundle import KPIAdderBundle from .dummy_dakota.dakota_bundle import DummyDakotaBundle @@ -9,6 +9,8 @@ from .dummy_kpi_calculator.dummy_kpi_calculator_bundle import ( class DummyPlugin(BaseExtensionPlugin): + id = plugin_id("enthought", "DummyPlugin") + def _data_source_bundles_default(self): return [DummyDataSourceBundle(), CSVExtractorBundle()] diff --git a/force_bdss/ids.py b/force_bdss/ids.py index 81ff1062170f547fc95cd90a79516781ad3848c6..b51a796a46f96b84f9f1114854091e18b6b3286f 100644 --- a/force_bdss/ids.py +++ b/force_bdss/ids.py @@ -36,6 +36,10 @@ def mco_parameter_id(producer, identifier): return _string_id("mco_parameter", producer, identifier) +def plugin_id(producer, identifier): + return _string_id("plugin", producer, identifier) + + def _string_id(entity_namespace, producer, identifier): """Creates an id for a generic entity.