pub enum ProgressUpdate {
WaitingForProviders {
job_id: String,
message: String,
},
ProvidersAvailable {
job_id: String,
},
ArticleComplete {
job_id: String,
file_id: String,
segment_number: u32,
decoded_bytes: u64,
file_complete: bool,
server_id: Option<String>,
yenc_filename: Option<String>,
},
ArticleFailed {
job_id: String,
file_id: String,
segment_number: u32,
failure: ArticleFailure,
},
JobFinished {
job_id: String,
success: bool,
articles_failed: usize,
download_time_secs: f64,
},
JobAborted {
job_id: String,
reason: String,
articles_failed: usize,
download_time_secs: f64,
},
}Variants§
WaitingForProviders
Every enabled NNTP provider is temporarily unavailable. The job stays active and will retry automatically when a provider recovers.
ProvidersAvailable
At least one NNTP provider recovered after a
ProgressUpdate::WaitingForProviders notification.
ArticleComplete
Fields
ArticleFailed
An article could not be retrieved. failure carries the typed
classification of why (NotFound, ServerDown, AuthFailed, …).
See crate::article_failure for the taxonomy.
JobFinished
JobAborted
Trait Implementations§
Source§impl Clone for ProgressUpdate
impl Clone for ProgressUpdate
Auto Trait Implementations§
impl Freeze for ProgressUpdate
impl RefUnwindSafe for ProgressUpdate
impl Send for ProgressUpdate
impl Sync for ProgressUpdate
impl Unpin for ProgressUpdate
impl UnsafeUnpin for ProgressUpdate
impl UnwindSafe for ProgressUpdate
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more