diff options
Diffstat (limited to 'src/Cache.py')
| -rw-r--r-- | src/Cache.py | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/Cache.py b/src/Cache.py index 2de55afa..46b39bda 100644 --- a/src/Cache.py +++ b/src/Cache.py @@ -1,21 +1,21 @@ -import time, uuid +import time, typing, uuid class Cache(object): def __init__(self): self._items = {} self._item_to_id = {} - def cache(self, item): + def cache(self, item: typing.Any) -> str: return self._cache(item, None) - def temporary_cache(self, item, timeout): + def temporary_cache(self, item: typing.Any, timeout: float)-> str: return self._cache(item, timeout) - def _cache(self, item, timeout): + def _cache(self, item: typing.Any, timeout: float) -> str: id = str(uuid.uuid4()) self._items[id] = [item, time.monotonic()+timeout] self._item_to_id[item] = id return id - def next_expiration(self): + def next_expiration(self) -> float: expirations = [self._items[id][1] for id in self._items] expirations = list(filter(None, expirations)) if not expirations: @@ -35,17 +35,17 @@ class Cache(object): del self._items[id] del self._item_to_id[item] - def has_item(self, item): + def has_item(self, item: typing.Any) -> bool: return item in self._item_to_id - def get(self, id): + def get(self, id: str) -> typing.Any: item, expiration = self._items[id] return item - def get_expiration(self, item): + def get_expiration(self, item: typing.Any) -> float: id = self._item_to_id[item] item, expiration = self._items[id] return expiration - def until_expiration(self, item): + def until_expiration(self, item: typing.Any) -> float: expiration = self.get_expiration(item) return expiration-time.monotonic() |
