Added support for default_ttl_seconds in create_cache_client()

This commit is contained in:
2025-07-09 14:31:55 +02:00
parent 7d95b1efee
commit 727d531d63
3 changed files with 7 additions and 6 deletions

View File

@@ -7,6 +7,7 @@ def create_cache_client(
config: Dict[str, Any],
engine: Literal["memcached", "redis"] | None = None,
prefix: Optional[str] = None,
default_ttl_seconds: Optional[int] = None,
) -> CacheMemcached | CacheRedis:
if engine not in ["memcached", "redis"] or engine is None:
raise KeyError(f"Incorrect cache engine provided. Expected 'memcached' or 'redis', got '{engine}'")
@@ -18,8 +19,8 @@ def create_cache_client(
match engine:
case "memcached":
return CacheMemcached.from_config(config["cache"][engine], prefix=prefix)
return CacheMemcached.from_config(config["cache"][engine], prefix=prefix, default_ttl_seconds=default_ttl_seconds)
case "redis":
return CacheRedis.from_config(config["cache"][engine], prefix=prefix)
return CacheRedis.from_config(config["cache"][engine], prefix=prefix, default_ttl_seconds=default_ttl_seconds)
case _:
raise KeyError(f"Cache implementation for the engine '{engine}' is not present.")