bss_oss_cache/
error.rs

1//! Cache error types
2
3use thiserror::Error;
4
5#[derive(Error, Debug)]
6pub enum CacheError {
7    #[error("Redis connection error: {0}")]
8    ConnectionError(String),
9
10    #[error("Redis operation error: {0}")]
11    OperationError(String),
12
13    #[error("Serialization error: {0}")]
14    SerializationError(#[from] serde_json::Error),
15
16    #[error("Key not found")]
17    KeyNotFound,
18
19    #[error("Invalid configuration: {0}")]
20    InvalidConfig(String),
21}
22
23impl From<redis::RedisError> for CacheError {
24    fn from(err: redis::RedisError) -> Self {
25        CacheError::OperationError(err.to_string())
26    }
27}