From 211ae1e2d9c6bb7ff1f287e8cb973182a80f7947 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Krist=C3=B3f=20T=C3=B3th?= Date: Wed, 30 May 2018 15:19:59 +0200 Subject: [PATCH] Allow changing MonitorManagerMixin.monitor_args dynamically --- lib/tfw/mixins/monitor_manager_mixin.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/tfw/mixins/monitor_manager_mixin.py b/lib/tfw/mixins/monitor_manager_mixin.py index 1f98314..f247659 100644 --- a/lib/tfw/mixins/monitor_manager_mixin.py +++ b/lib/tfw/mixins/monitor_manager_mixin.py @@ -10,18 +10,21 @@ class MonitorManagerMixin: def __init__(self, monitor_type, *monitor_args): self._monitor_type = monitor_type self._monitor = None - self._monitor_args = monitor_args + self.monitor_args = monitor_args self.reload_monitor() @property def monitor(self): return self._monitor + def set_monitor_args(self, *monitor_args): + self.monitor_args = monitor_args + def reload_monitor(self): if self._monitor: try: self._monitor.stop() except KeyError: LOG.debug('Working directory was removed – ignoring...') - self._monitor = self._monitor_type(*self._monitor_args) + self._monitor = self._monitor_type(*self.monitor_args) self._monitor.watch() # This runs on a separate thread