From 84dcc50dae43f615c743ba3924c7889bc4612efd Mon Sep 17 00:00:00 2001 From: Robert Goldmann <deadlocker@gmx.de> Date: Mon, 12 Oct 2020 21:20:14 +0200 Subject: [PATCH] BaseUtils: improve cached services --- TheCodeLabs_BaseUtils/TheCodeLabs_BaseUtils/CachedService.py | 2 +- .../TheCodeLabs_BaseUtils/MultiCacheKeyService.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/TheCodeLabs_BaseUtils/TheCodeLabs_BaseUtils/CachedService.py b/TheCodeLabs_BaseUtils/TheCodeLabs_BaseUtils/CachedService.py index 614b133..a250340 100644 --- a/TheCodeLabs_BaseUtils/TheCodeLabs_BaseUtils/CachedService.py +++ b/TheCodeLabs_BaseUtils/TheCodeLabs_BaseUtils/CachedService.py @@ -13,12 +13,12 @@ class CachedService(ABC): def get_data(self) -> Dict: if self.__is_data_obsolete(): self._data = self._fetch_data() + self._lastFetchTimestamp = now = datetime.now().timestamp() return self._data def __is_data_obsolete(self) -> bool: now = datetime.now().timestamp() if (now - self._lastFetchTimestamp) > self._fetchThresholdInSeconds: - self._lastFetchTimestamp = now return True return False diff --git a/TheCodeLabs_BaseUtils/TheCodeLabs_BaseUtils/MultiCacheKeyService.py b/TheCodeLabs_BaseUtils/TheCodeLabs_BaseUtils/MultiCacheKeyService.py index 5260c83..d5dd760 100644 --- a/TheCodeLabs_BaseUtils/TheCodeLabs_BaseUtils/MultiCacheKeyService.py +++ b/TheCodeLabs_BaseUtils/TheCodeLabs_BaseUtils/MultiCacheKeyService.py @@ -30,12 +30,12 @@ class MultiCacheKeyService(ABC): cacheEntry = self._cache[cacheKey] if self.__is_data_obsolete(cacheEntry): cacheEntry.cachedData = self._fetch_data(cacheEntry.settings) + cacheEntry.lastFetchTimestamp = datetime.now().timestamp() return cacheEntry.cachedData def __is_data_obsolete(self, cacheEntry: CacheEntry) -> bool: now = datetime.now().timestamp() if (now - cacheEntry.lastFetchTimestamp) > cacheEntry.fetchIntervalInSeconds: - cacheEntry.lastFetchTimestamp = now return True return False -- GitLab