tooluniverse.cache.result_cache_manager moduleΒΆ

Result cache manager that coordinates in-memory and persistent storage.

class tooluniverse.cache.result_cache_manager.CacheRecord[source]ΒΆ

Bases: object

CacheRecord(value: β€˜Any’, expires_at: β€˜Optional[float]’, namespace: β€˜str’, version: β€˜str’)

value: AnyΒΆ
expires_at: float | NoneΒΆ
namespace: strΒΆ
version: strΒΆ
__init__(value, expires_at, namespace, version)ΒΆ
class tooluniverse.cache.result_cache_manager.ResultCacheManager[source]ΒΆ

Bases: object

Facade around memory + persistent cache layers.

__init__(*, memory_size=256, persistent_path=None, enabled=True, persistence_enabled=True, singleflight=True, default_ttl=None, async_persist=None, async_queue_size=10000)[source]ΒΆ
static compose_key(namespace, version, cache_key)[source]ΒΆ
get(*, namespace, version, cache_key)[source]ΒΆ
set(*, namespace, version, cache_key, value, ttl=None)[source]ΒΆ
delete(*, namespace, version, cache_key)[source]ΒΆ
clear(namespace=None)[source]ΒΆ
bulk_get(requests)[source]ΒΆ

Fetch multiple cache entries at once.

Parameters:

requests (Sequence[Dict[str, str]]) – Iterable of dicts containing namespace, version and cache_key.

Returns

Mapping of composed cache keys to cached values.

stats()[source]ΒΆ
dump(namespace=None)[source]ΒΆ
singleflight_guard(composed_key)[source]ΒΆ
close()[source]ΒΆ

Close the cache manager and cleanup resources.

__del__()[source]ΒΆ

Ensure cleanup happens even if close() is not called explicitly.

flush()[source]ΒΆ