From ba9dbc03f1f866428da99ef99e963854b3f07456 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mose=20M=C3=BCller?= <mosemueller@gmail.com> Date: Tue, 21 May 2024 14:03:21 +0200 Subject: [PATCH] removes attribute key from observers dict if list of observers is empty --- src/pydase/observer_pattern/observable/observable_object.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/pydase/observer_pattern/observable/observable_object.py b/src/pydase/observer_pattern/observable/observable_object.py index aa39413..d749ef5 100644 --- a/src/pydase/observer_pattern/observable/observable_object.py +++ b/src/pydase/observer_pattern/observable/observable_object.py @@ -32,6 +32,10 @@ class ObservableObject(ABC): if attribute in self._observers: self._observers[attribute].remove(observer) + # remove attribute key from observers dict if list of observers is empty + if not self._observers[attribute]: + del self._observers[attribute] + @abstractmethod def _remove_observer_if_observable(self, name: str) -> None: """Removes the current object as an observer from an observable attribute.