pub enum CloudError {
Request(String),
BadRequest {
message: String,
},
AuthenticationFailed {
message: String,
},
Forbidden {
message: String,
},
NotFound {
message: String,
},
PreconditionFailed,
RateLimited {
message: String,
},
InternalServerError {
message: String,
},
ServiceUnavailable {
message: String,
},
ApiError {
code: u16,
message: String,
},
ConnectionError(String),
JsonError(String),
}Expand description
Errors that can occur when interacting with the Redis Cloud API
Variants§
Request(String)
HTTP request failed (network error, timeout, etc.)
BadRequest
Bad Request (400) - Invalid request parameters
AuthenticationFailed
Authentication failed (401) - Invalid or missing credentials
Forbidden
Forbidden (403) - Insufficient permissions
NotFound
Not Found (404) - Resource does not exist
PreconditionFailed
Precondition Failed (412) - Feature flag is disabled
RateLimited
Rate Limited (429) - Too many requests
InternalServerError
Internal Server Error (500) - Server-side error
Service Unavailable (503) - Server temporarily unavailable
ApiError
Generic API error for other HTTP status codes
ConnectionError(String)
Connection error (failed to establish connection)
JsonError(String)
JSON serialization/deserialization error
Implementations§
Source§impl CloudError
impl CloudError
Sourcepub fn is_retryable(&self) -> bool
pub fn is_retryable(&self) -> bool
Returns true if this error is retryable.
Retryable errors include:
- Rate limited (429)
- Service unavailable (503)
- Connection/request errors (may be transient network issues)
§Examples
use redis_cloud::CloudError;
let error = CloudError::RateLimited { message: "Too many requests".to_string() };
assert!(error.is_retryable());
let error = CloudError::NotFound { message: "Resource not found".to_string() };
assert!(!error.is_retryable());Trait Implementations§
Source§impl Clone for CloudError
impl Clone for CloudError
Source§fn clone(&self) -> CloudError
fn clone(&self) -> CloudError
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CloudError
impl Debug for CloudError
Source§impl Display for CloudError
impl Display for CloudError
Source§impl Error for CloudError
impl Error for CloudError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Source§impl From<Error> for CloudError
impl From<Error> for CloudError
Auto Trait Implementations§
impl Freeze for CloudError
impl RefUnwindSafe for CloudError
impl Send for CloudError
impl Sync for CloudError
impl Unpin for CloudError
impl UnwindSafe for CloudError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.