From: Tony Mack Date: Sat, 29 Oct 2011 13:51:52 +0000 (-0400) Subject: remove expired data X-Git-Tag: sfa-1.1-3~115 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=b3a3f16e06d8a65ad62fe1b4768fe37548d368a4;p=sfa.git remove expired data --- diff --git a/sfa/util/cache.py b/sfa/util/cache.py index 0383ccce..a2ded4a4 100644 --- a/sfa/util/cache.py +++ b/sfa/util/cache.py @@ -82,9 +82,18 @@ class Cache: def get(self, key): data = self.cache.get(key) - if not data or data.is_expired(): - return None - return data.get_data() + if not data: + data = None + elif data.is_expired(): + self.pop(key) + data = None + else: + data = data.get_data() + return data + + def pop(self, key): + if key in self.cache: + self.cache.pop(key) def dump(self): result = {}