Source code for fragmented_keys.cache_handler.memory
from __future__ import annotations
[docs]
class MemoryHandler:
"""In-memory cache handler for testing and temporary caching."""
_cache: dict[str, str]
def __init__(self) -> None:
self._cache = {}
[docs]
def group_name(self) -> str:
return "MemoryHandler"
[docs]
def get(self, key: str) -> str | None:
return self._cache.get(key)
[docs]
def set(self, key: str, value: str, ttl: int | None = None) -> None:
self._cache[key] = value
[docs]
def get_multi(self, keys: list[str]) -> dict[str, str]:
return {k: self._cache[k] for k in keys if k in self._cache}
[docs]
def clear(self) -> None:
"""Clear all cached values."""
self._cache.clear()