From b8a52c2e6a55b0785a12eff1cdb2e5acdec1119e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mose=20M=C3=BCller?= Date: Tue, 5 Mar 2024 13:56:02 +0100 Subject: [PATCH] only update cache and execute notification callbacks if attribute is public and has changed --- src/pydase/data_service/data_service_observer.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/pydase/data_service/data_service_observer.py b/src/pydase/data_service/data_service_observer.py index 29450f4..ec2262e 100644 --- a/src/pydase/data_service/data_service_observer.py +++ b/src/pydase/data_service/data_service_observer.py @@ -42,16 +42,16 @@ class DataServiceObserver(PropertyObserver): ): logger.debug("'%s' changed to '%s'", full_access_path, value) - self._update_cache_value(full_access_path, value, cached_value_dict) + self._update_cache_value(full_access_path, value, cached_value_dict) - cached_value_dict = deepcopy( - self.state_manager._data_service_cache.get_value_dict_from_cache( - full_access_path + cached_value_dict = deepcopy( + self.state_manager._data_service_cache.get_value_dict_from_cache( + full_access_path + ) ) - ) - for callback in self._notification_callbacks: - callback(full_access_path, value, cached_value_dict) + for callback in self._notification_callbacks: + callback(full_access_path, value, cached_value_dict) if isinstance(value, ObservableObject): self._update_property_deps_dict()