pub enum HttpError<Client: HttpClient> {
Request(GetRequestError<Client>),
Chunk(GetChunkError<Client>, GetResponse<Client>),
Irrecoverable,
MismatchedBody(FileId, GetResponse<Client>),
}Expand description
Errors that can occur during HTTP download operations.
Maps to the various stages of an HTTP request: building, streaming chunks, detecting mismatched file identity, and irrecoverable failures.
Variants§
Request(GetRequestError<Client>)
The HTTP request failed to send.
Chunk(GetChunkError<Client>, GetResponse<Client>)
Reading a response body chunk failed.
Irrecoverable
A pull failure the engine must not retry.
MismatchedBody(FileId, GetResponse<Client>)
The response’s file identity did not match the expected one.
Trait Implementations§
Source§impl<Client: HttpClient> Debug for HttpError<Client>
impl<Client: HttpClient> Debug for HttpError<Client>
Source§impl<Client: HttpClient> Display for HttpError<Client>
impl<Client: HttpClient> Display for HttpError<Client>
Source§impl<Client: HttpClient> Error for HttpError<Client>
impl<Client: HttpClient> Error for HttpError<Client>
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<C: HttpClient> PullerError for HttpError<C>
impl<C: HttpClient> PullerError for HttpError<C>
Source§fn is_irrecoverable(&self) -> bool
fn is_irrecoverable(&self) -> bool
Whether an error is fatal and must not be retried. Read more
Auto Trait Implementations§
impl<Client> Freeze for HttpError<Client>where
<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::RequestError: Freeze,
<<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::Response as HttpResponse>::ChunkError: Freeze,
<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::Response: Freeze,
impl<Client> RefUnwindSafe for HttpError<Client>where
<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::RequestError: RefUnwindSafe,
<<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::Response as HttpResponse>::ChunkError: RefUnwindSafe,
<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::Response: RefUnwindSafe,
impl<Client> Send for HttpError<Client>where
<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::RequestError: Send,
<<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::Response as HttpResponse>::ChunkError: Send,
<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::Response: Send,
impl<Client> Sync for HttpError<Client>where
<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::RequestError: Sync,
<<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::Response as HttpResponse>::ChunkError: Sync,
<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::Response: Sync,
impl<Client> Unpin for HttpError<Client>where
<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::RequestError: Unpin,
<<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::Response as HttpResponse>::ChunkError: Unpin,
<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::Response: Unpin,
impl<Client> UnsafeUnpin for HttpError<Client>where
<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::RequestError: UnsafeUnpin,
<<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::Response as HttpResponse>::ChunkError: UnsafeUnpin,
<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::Response: UnsafeUnpin,
impl<Client> UnwindSafe for HttpError<Client>where
<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::RequestError: UnwindSafe,
<<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::Response as HttpResponse>::ChunkError: UnwindSafe,
<<Client as HttpClient>::RequestBuilder as HttpRequestBuilder>::Response: UnwindSafe,
Blanket Implementations§
impl<T> AnyError for T
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