pub enum FaucetError {
Http(Error),
HttpStatus {
status: u16,
url: String,
body: String,
},
Json(Error),
JsonPath(String),
Auth(String),
RateLimited(Duration),
Url(String),
Transform(String),
}Expand description
All possible errors returned by faucet-stream.
Variants§
Http(Error)
HttpStatus
An HTTP response with a non-success status code.
Contains the status code, URL, and (truncated) response body for
debugging. Whether this error is retriable depends on the status code
— see FaucetError::is_retriable.
Json(Error)
JsonPath(String)
Auth(String)
RateLimited(Duration)
The server responded with HTTP 429 Too Many Requests.
The inner value is the duration to wait before retrying,
parsed from the Retry-After response header (default: 60 s).
Url(String)
A URL could not be constructed or parsed.
Transform(String)
A record transform could not be compiled or applied (e.g. invalid regex).
Implementations§
Source§impl FaucetError
impl FaucetError
Sourcepub fn is_retriable(&self) -> bool
pub fn is_retriable(&self) -> bool
Whether this error is transient and the request should be retried.
Retriable errors:
- Network / connection errors (
Httpfrom reqwest) - Server errors (5xx status codes)
- Rate limiting (429 — handled separately with
Retry-After)
Non-retriable errors:
- Client errors (4xx except 429)
- JSON parse / JSONPath / auth / transform errors
Trait Implementations§
Source§impl Debug for FaucetError
impl Debug for FaucetError
Source§impl Display for FaucetError
impl Display for FaucetError
Source§impl Error for FaucetError
impl Error for FaucetError
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 FaucetError
impl From<Error> for FaucetError
Auto Trait Implementations§
impl Freeze for FaucetError
impl !RefUnwindSafe for FaucetError
impl Send for FaucetError
impl Sync for FaucetError
impl Unpin for FaucetError
impl UnsafeUnpin for FaucetError
impl !UnwindSafe for FaucetError
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> 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.