pub enum FinalizeOutcome {
Complete(FileUploadResult),
Partial {
result: FileUploadResult,
resume: FinalizeResume,
},
}Expand description
Outcome of a resumable external-signer finalize
(Client::finalize_upload_resumable /
Client::finalize_upload_merkle_multi_resumable /
Client::finalize_resume).
Complete means every chunk is stored. Partial means some chunks are
still unstored after retries — short of quorum, or cut off by a store
abort; its FinalizeResume handle owns the retained payment material, so
the caller can store the remainder against the same on-chain payment
without re-quoting or re-signing (issue #140). Persistent store failures
also surface as Partial, so loops that retry a handle must bound their
attempts (see Client::finalize_resume).
Variants§
Complete(FileUploadResult)
All chunks stored; the file is fully retrievable.
Partial
Some chunks remain unstored after retries.
Fields
result: FileUploadResultProgress snapshot for this attempt (stored/failed counts, on-chain
spend, data_map_address). Per-attempt store telemetry
(chunk_attempts_total, store_durations_ms, retries_histogram)
is not carried on a partial and reads as empty/zero.
resume: FinalizeResumeHand back to Client::finalize_resume to store the still-unstored
chunks against the same payment.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for FinalizeOutcome
impl RefUnwindSafe for FinalizeOutcome
impl Send for FinalizeOutcome
impl Sync for FinalizeOutcome
impl Unpin for FinalizeOutcome
impl UnsafeUnpin for FinalizeOutcome
impl UnwindSafe for FinalizeOutcome
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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> ⓘ
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> ⓘ
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