praval.storage.providers.redis_provider
Redis storage provider for Praval framework
Provides key-value storage, caching, and pub/sub capabilities with Redis backend.
Classes
|
Redis key-value storage provider with async support. |
- class praval.storage.providers.redis_provider.RedisProvider(name, config)[source]
Bases:
BaseStorageProviderRedis key-value storage provider with async support.
Features: - Key-value operations (GET, SET, DEL) - Hash operations (HGET, HSET, HGETALL) - List operations (LPUSH, RPUSH, LRANGE) - Set operations (SADD, SMEMBERS) - Expiration and TTL management - Pub/Sub messaging - Lua script execution
- Parameters:
name (str)
config (Dict[str, Any])
- async store(resource, data, **kwargs)[source]
Store data in Redis.
- Parameters:
resource (
str) – Redis keydata (
Any) – Data to store (will be JSON serialized if not string)**kwargs – Redis parameters (ex, px, nx, xx, etc.)
- Return type:
- Returns:
StorageResult with operation outcome
- async retrieve(resource, **kwargs)[source]
Retrieve data from Redis.
- Parameters:
resource (
str) – Redis key**kwargs – Additional parameters (decode_json, etc.)
- Return type:
- Returns:
StorageResult with retrieved data
- async query(resource, query, **kwargs)[source]
Execute Redis operations or search queries.
- Parameters:
resource (
str) – Pattern or specific keyquery (
Union[str,Dict]) – Query type or Redis command**kwargs – Query parameters
- Return type:
- Returns:
StorageResult with query results
- async delete(resource, **kwargs)[source]
Delete keys from Redis.
- Parameters:
resource (
str) – Key or pattern to delete**kwargs – Delete parameters
- Return type:
- Returns:
StorageResult with operation outcome