From 8b7b96420cf516412de23e2db0034080a311f4ab Mon Sep 17 00:00:00 2001 From: Stefano Borini <sborini@enthought.com> Date: Wed, 9 Aug 2017 17:16:44 +0100 Subject: [PATCH] Fixed overall import strategy --- force_bdss/api.py | 2 ++ .../dummy_notification_listener.py | 9 ++++-- .../dummy_notification_listener_factory.py | 8 +++--- .../dummy_notification_listener_model.py | 4 +-- force_bdss/core_plugins/dummy/dummy_plugin.py | 8 ++---- .../dummy/ui_notification/ui_notification.py | 28 +++++++++++++------ .../ui_notification_factory.py | 6 ++-- .../ui_notification/ui_notification_model.py | 4 +-- 8 files changed, 38 insertions(+), 31 deletions(-) diff --git a/force_bdss/api.py b/force_bdss/api.py index 1713d4f..fb6af34 100644 --- a/force_bdss/api.py +++ b/force_bdss/api.py @@ -21,6 +21,8 @@ from .mco.i_mco_factory import IMCOFactory # noqa from .mco.parameters.base_mco_parameter_factory import BaseMCOParameterFactory # noqa from .mco.parameters.base_mco_parameter import BaseMCOParameter # noqa +from .mco.events import * # noqa + from .notification_listeners.i_notification_listener_factory import INotificationListenerFactory # noqa from .notification_listeners.base_notification_listener import BaseNotificationListener # noqa from .notification_listeners.base_notification_listener_factory import BaseNotificationListenerFactory # noqa diff --git a/force_bdss/core_plugins/dummy/dummy_notification_listener/dummy_notification_listener.py b/force_bdss/core_plugins/dummy/dummy_notification_listener/dummy_notification_listener.py index dbd0ed7..77d96ae 100644 --- a/force_bdss/core_plugins/dummy/dummy_notification_listener/dummy_notification_listener.py +++ b/force_bdss/core_plugins/dummy/dummy_notification_listener/dummy_notification_listener.py @@ -1,6 +1,9 @@ -from force_bdss.api import BaseNotificationListener -from force_bdss.mco.events import ( - MCOStartEvent, MCOFinishEvent, MCOProgressEvent) +from force_bdss.api import ( + BaseNotificationListener, + MCOStartEvent, + MCOFinishEvent, + MCOProgressEvent +) class DummyNotificationListener(BaseNotificationListener): diff --git a/force_bdss/core_plugins/dummy/dummy_notification_listener/dummy_notification_listener_factory.py b/force_bdss/core_plugins/dummy/dummy_notification_listener/dummy_notification_listener_factory.py index 74d6b38..e8e7c37 100644 --- a/force_bdss/core_plugins/dummy/dummy_notification_listener/dummy_notification_listener_factory.py +++ b/force_bdss/core_plugins/dummy/dummy_notification_listener/dummy_notification_listener_factory.py @@ -1,9 +1,9 @@ from traits.api import String -from force_bdss.ids import factory_id -from force_bdss.notification_listeners.base_notification_listener_factory \ - import \ - BaseNotificationListenerFactory +from force_bdss.api import ( + factory_id, + BaseNotificationListenerFactory) + from .dummy_notification_listener import DummyNotificationListener from .dummy_notification_listener_model import DummyNotificationListenerModel diff --git a/force_bdss/core_plugins/dummy/dummy_notification_listener/dummy_notification_listener_model.py b/force_bdss/core_plugins/dummy/dummy_notification_listener/dummy_notification_listener_model.py index 78443c4..0e2c5ba 100644 --- a/force_bdss/core_plugins/dummy/dummy_notification_listener/dummy_notification_listener_model.py +++ b/force_bdss/core_plugins/dummy/dummy_notification_listener/dummy_notification_listener_model.py @@ -1,6 +1,4 @@ -from force_bdss.notification_listeners.base_notification_listener_model \ - import \ - BaseNotificationListenerModel +from force_bdss.api import BaseNotificationListenerModel class DummyNotificationListenerModel(BaseNotificationListenerModel): diff --git a/force_bdss/core_plugins/dummy/dummy_plugin.py b/force_bdss/core_plugins/dummy/dummy_plugin.py index 15bc6ef..63a229b 100644 --- a/force_bdss/core_plugins/dummy/dummy_plugin.py +++ b/force_bdss/core_plugins/dummy/dummy_plugin.py @@ -1,10 +1,8 @@ from force_bdss.api import BaseExtensionPlugin, plugin_id -from force_bdss.core_plugins.dummy.dummy_notification_listener\ - .dummy_notification_listener_factory import \ +from .dummy_notification_listener.dummy_notification_listener_factory import ( DummyNotificationListenerFactory -from force_bdss.core_plugins.dummy.ui_notification.ui_notification_factory \ - import \ - UINotificationFactory +) +from .ui_notification.ui_notification_factory import UINotificationFactory from .csv_extractor.csv_extractor_factory import CSVExtractorFactory from .kpi_adder.kpi_adder_factory import KPIAdderFactory from .dummy_dakota.dakota_factory import DummyDakotaFactory diff --git a/force_bdss/core_plugins/dummy/ui_notification/ui_notification.py b/force_bdss/core_plugins/dummy/ui_notification/ui_notification.py index c8fe935..fa80783 100644 --- a/force_bdss/core_plugins/dummy/ui_notification/ui_notification.py +++ b/force_bdss/core_plugins/dummy/ui_notification/ui_notification.py @@ -2,14 +2,20 @@ import errno import logging from traits.api import Any, List -from force_bdss.api import BaseNotificationListener -import zmq - -from force_bdss.mco.events import MCOStartEvent, MCOFinishEvent, \ +from force_bdss.api import ( + BaseNotificationListener, + MCOStartEvent, + MCOFinishEvent, MCOProgressEvent +) + +import zmq class UINotification(BaseNotificationListener): + """ + Notification engine for the UI. Uses zeromq for the traffic handling. + """ #: The ZMQ context. _context = Any() @@ -49,6 +55,15 @@ class UINotification(BaseNotificationListener): self._rep_socket = self._context.socket(zmq.REP) self._rep_socket.bind("tcp://*:12346") + def finalize(self, model): + self._pub_socket.close() + self._rep_socket.close() + self._context.term() + + self._pub_socket = None + self._rep_socket = None + self._context = None + def _format_event(self, event): if isinstance(event, MCOStartEvent): data = "MCO_START" @@ -63,8 +78,3 @@ class UINotification(BaseNotificationListener): return ("EVENT\n{}".format(data)).encode("utf-8") - def finalize(self, model): - self._context.destroy() - self._pub_socket = None - self._rep_socket = None - self._context = None diff --git a/force_bdss/core_plugins/dummy/ui_notification/ui_notification_factory.py b/force_bdss/core_plugins/dummy/ui_notification/ui_notification_factory.py index 2af65f8..39cee9b 100644 --- a/force_bdss/core_plugins/dummy/ui_notification/ui_notification_factory.py +++ b/force_bdss/core_plugins/dummy/ui_notification/ui_notification_factory.py @@ -1,9 +1,7 @@ from traits.api import String -from force_bdss.ids import factory_id -from force_bdss.notification_listeners.base_notification_listener_factory \ - import \ - BaseNotificationListenerFactory +from force_bdss.api import factory_id, BaseNotificationListenerFactory + from .ui_notification import UINotification from .ui_notification_model import UINotificationModel diff --git a/force_bdss/core_plugins/dummy/ui_notification/ui_notification_model.py b/force_bdss/core_plugins/dummy/ui_notification/ui_notification_model.py index c20ad09..3f5cc16 100644 --- a/force_bdss/core_plugins/dummy/ui_notification/ui_notification_model.py +++ b/force_bdss/core_plugins/dummy/ui_notification/ui_notification_model.py @@ -1,6 +1,4 @@ -from force_bdss.notification_listeners.base_notification_listener_model \ - import \ - BaseNotificationListenerModel +from force_bdss.api import BaseNotificationListenerModel class UINotificationModel(BaseNotificationListenerModel): -- GitLab