refresh logging when reconnected while watching

when a connection is reconnected, send 'logging' has to
be resent when watching

Change-Id: I13bb0075811151d93bd20f390b4c0745b9ad5418
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/30604
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de>
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
This commit is contained in:
zolliker 2023-03-08 08:12:44 +01:00
parent 746df2eb94
commit 952cbe76a5

View File

@ -187,12 +187,18 @@ class Module:
for pname in self._watched_params: for pname in self._watched_params:
self._secnode.register_callback((self._name, pname), updateEvent=self._watch_parameter) self._secnode.register_callback((self._name, pname), updateEvent=self._watch_parameter)
self._secnode.request('logging', self._name, self._log_level) self._secnode.request('logging', self._name, self._log_level)
self._secnode.register_callback(None, nodeStateChange=self._set_log_level)
def _stop_watching(self): def _stop_watching(self):
for pname in self._watched_params: for pname in self._watched_params:
self._secnode.unregister_callback((self._name, pname), updateEvent=self._watch_parameter) self._secnode.unregister_callback((self._name, pname), updateEvent=self._watch_parameter)
self._secnode.unregister_callback(None, nodeStateChange=self._set_log_level)
self._secnode.request('logging', self._name, 'off') self._secnode.request('logging', self._name, 'off')
def _set_log_level(self, online, state):
if online and state == 'connected':
self._secnode.request('logging', self._name, self._log_level)
def read(self, pname='value'): def read(self, pname='value'):
value, _, error = self._secnode.readParameter(self._name, pname) value, _, error = self._secnode.readParameter(self._name, pname)
if error: if error: