Files
gogo2/COBY/caching/redis_manager.py
Dobromir Popov 622d059aae 18: tests, fixes
2025-08-05 14:11:49 +03:00

50 lines
1.2 KiB
Python

"""
Simple Redis manager stub.
"""
import logging
from typing import Any, Optional
logger = logging.getLogger(__name__)
class RedisManager:
"""Simple Redis manager stub"""
def __init__(self):
self.connected = False
self.cache = {} # In-memory cache as fallback
async def connect(self):
"""Connect to Redis (stub)"""
logger.info("Redis manager initialized (stub mode)")
self.connected = True
async def initialize(self):
"""Initialize Redis manager"""
await self.connect()
async def disconnect(self):
"""Disconnect from Redis"""
self.connected = False
def is_connected(self) -> bool:
"""Check if connected"""
return self.connected
async def set(self, key: str, value: Any, ttl: Optional[int] = None):
"""Set value in cache"""
self.cache[key] = value
logger.debug(f"Cached key: {key}")
async def get(self, key: str) -> Optional[Any]:
"""Get value from cache"""
return self.cache.get(key)
async def delete(self, key: str):
"""Delete key from cache"""
self.cache.pop(key, None)
# Global instance
redis_manager = RedisManager()