From 4bf3acab9828dd329da7eafa660e160cf99a5a81 Mon Sep 17 00:00:00 2001 From: Markus Zolliker Date: Wed, 10 Nov 2021 15:07:16 +0100 Subject: [PATCH] various small changes - set default target unit to '$' - shorten too verbose error message on client - add shutdown method to server and dispatcher Change-Id: Ib3a8b26bc31e988e45a3ff2efd734168d723d794 Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/27095 Tested-by: Jenkins Automated Tests Reviewed-by: Enrico Faulhaber Reviewed-by: Markus Zolliker --- secop/client/__init__.py | 2 +- secop/modules.py | 2 +- secop/protocol/dispatcher.py | 1 + secop/server.py | 4 ++++ 4 files changed, 7 insertions(+), 2 deletions(-) diff --git a/secop/client/__init__.py b/secop/client/__init__.py index df773c3..346179e 100644 --- a/secop/client/__init__.py +++ b/secop/client/__init__.py @@ -518,7 +518,7 @@ class SecopClient(ProxyClient): action, _, data = entry[2] # pylint: disable=unpacking-non-sequence if action.startswith(ERRORPREFIX): errcls = self.error_map(data[0]) - raise errcls('on SEC-Node: ' + data[1]) + raise errcls(data[1]) return entry[2] # reply def request(self, action, ident=None, data=None): diff --git a/secop/modules.py b/secop/modules.py index 2bb00f3..d29fd77 100644 --- a/secop/modules.py +++ b/secop/modules.py @@ -642,7 +642,7 @@ class Writable(Readable): """basic writable module""" target = Parameter('target value of the module', - default=0, readonly=False, datatype=FloatRange()) + default=0, readonly=False, datatype=FloatRange(unit='$')) class Drivable(Writable): diff --git a/secop/protocol/dispatcher.py b/secop/protocol/dispatcher.py index 7d9f7ff..5075b4b 100644 --- a/secop/protocol/dispatcher.py +++ b/secop/protocol/dispatcher.py @@ -83,6 +83,7 @@ class Dispatcher: self._subscriptions = {} self._lock = threading.RLock() self.restart = srv.restart + self.shutdown = srv.shutdown def broadcast_event(self, msg, reallyall=False): """broadcasts a msg to all active connections diff --git a/secop/server.py b/secop/server.py index d8f49c4..833dc14 100644 --- a/secop/server.py +++ b/secop/server.py @@ -220,6 +220,10 @@ class Server: self._restart = True self.interface.shutdown() + def shutdown(self): + self._restart = False + self.interface.shutdown() + def _processCfg(self): errors = [] opts = dict(self.node_cfg)