pub enum BundleState {
ExportReady,
ExportDownloaded,
ExportAcked,
ImportPending,
ImportReceived,
ImportPreviewed,
ImportCommitted,
Aborted,
Expired,
}Expand description
Per-bundle state machine. Transitions are recorded in
docs/05-design-notes/backup-descriptor-pattern.md §“State machine”.
Variants§
ExportReady
Export: bytes are minted and waiting for download.
ExportDownloaded
Export: bytes have been downloaded once. Terminal — blob endpoint refuses further reads (one-shot).
ExportAcked
Export: optional complete-export ack received.
ImportPending
Import: upload slot minted; awaiting blob POST.
ImportReceived
Import: bytes received; awaiting finalize-import.
ImportPreviewed
Import: finalize-import ran in preview mode. Bundle stays
open so the operator can re-finalize in commit mode.
ImportCommitted
Import: finalize-import committed. Terminal.
Aborted
Operator-requested cancel. Terminal.
Expired
Sweeper-driven garbage collection. Terminal.
Implementations§
Source§impl BundleState
impl BundleState
Sourcepub fn is_terminal(self) -> bool
pub fn is_terminal(self) -> bool
True when the state is terminal — the sweeper may free the bytes and the dispatcher refuses further mutations except retention-driven record deletion.
Trait Implementations§
Source§impl Clone for BundleState
impl Clone for BundleState
Source§fn clone(&self) -> BundleState
fn clone(&self) -> BundleState
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for BundleState
Source§impl Debug for BundleState
impl Debug for BundleState
Source§impl<'de> Deserialize<'de> for BundleState
impl<'de> Deserialize<'de> for BundleState
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for BundleState
Source§impl PartialEq for BundleState
impl PartialEq for BundleState
Source§impl Serialize for BundleState
impl Serialize for BundleState
impl StructuralPartialEq for BundleState
Auto Trait Implementations§
impl Freeze for BundleState
impl RefUnwindSafe for BundleState
impl Send for BundleState
impl Sync for BundleState
impl Unpin for BundleState
impl UnsafeUnpin for BundleState
impl UnwindSafe for BundleState
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
Source§impl<T> BorrowUnordered for T
impl<T> BorrowUnordered for T
fn as_unordered(&self) -> &Unordered<T>
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<'de, T, C> DeserializeTyped<'de, C> for Twhere
T: Deserialize<'de>,
impl<'de, T, C> DeserializeTyped<'de, C> for Twhere
T: Deserialize<'de>,
fn deserialize_typed<S>(
_: &C,
deserializer: S,
) -> Result<T, <S as Deserializer<'de>>::Error>where
S: Deserializer<'de>,
impl<T, U> DeserializeTypedOwned<T> for Uwhere
U: for<'de> DeserializeTyped<'de, T>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
fn equivalent(&self, key: &K) -> bool
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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, U, C> IntoWithContext<U, C> for Twhere
U: FromWithContext<T, C>,
impl<T, U, C> IntoWithContext<U, C> for Twhere
U: FromWithContext<T, C>,
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> ResourceProvider<()> for T
impl<T> ResourceProvider<()> for T
Source§fn get_resource(&self) -> &()
fn get_resource(&self) -> &()
T.