pub enum OwnerJoinProgress {
Show 16 variants
Offered(DeviceJoinOffer),
AccessRequested(DeviceProviderAccessRequest),
AccessGrantPrepared {
request: DeviceProviderAccessRequest,
grant: StoreMemberProviderAccessGrant,
prepared: PreparedDeviceJoinObject,
},
ApprovalPrepared(DeviceProviderAdmissionApproval),
RegistrationRequested(DeviceRegistrationRequest),
AbandonmentCreateIntent {
offer: DeviceJoinOffer,
abandonment: DeviceJoinAbandonmentRef,
prepared: PreparedDeviceJoinObject,
},
AttemptActivated(ProvisionalDeviceBootstrap),
ChallengeCreateIntent(ProvisionalDeviceBootstrap),
ProviderReady(ProviderReadyDeviceBootstrap),
ResponseObserved(DeviceJoinReadiness),
Completed(DeviceProviderAdmissionCompletion),
SamePrincipalActivationCreateIntent {
request: DeviceRegistrationRequest,
bootstrap_cut: StoreHistoryCut,
membership: StoreMembershipStateRef,
registration: StoreDeviceRegistrationRef,
registration_prepared: PreparedDeviceJoinObject,
},
ActivationCreateIntent {
completion: DeviceProviderAdmissionCompletion,
},
ActivationPrepared {
completion: DeviceProviderAdmissionCompletion,
activation: DeviceJoinActivation,
registration: StoreDeviceRegistrationRef,
},
SamePrincipalCompleted {
join: SamePrincipalDeviceJoin,
registration: StoreDeviceRegistrationRef,
},
Abandoned(DeviceJoinAbandonment),
}Variants§
Offered(DeviceJoinOffer)
AccessRequested(DeviceProviderAccessRequest)
The joining device asked for provider access. The admitting device holds the store’s provider-administrator grant, so answering this request, the grant it prepares, and the approval it signs are all its own steps.
AccessGrantPrepared
ApprovalPrepared(DeviceProviderAdmissionApproval)
RegistrationRequested(DeviceRegistrationRequest)
AbandonmentCreateIntent
Fields
offer: DeviceJoinOfferabandonment: DeviceJoinAbandonmentRefprepared: PreparedDeviceJoinObjectAttemptActivated(ProvisionalDeviceBootstrap)
ChallengeCreateIntent(ProvisionalDeviceBootstrap)
ProviderReady(ProviderReadyDeviceBootstrap)
ResponseObserved(DeviceJoinReadiness)
Completed(DeviceProviderAdmissionCompletion)
SamePrincipalActivationCreateIntent
Fields
request: DeviceRegistrationRequestbootstrap_cut: StoreHistoryCutmembership: StoreMembershipStateRefregistration: StoreDeviceRegistrationRefregistration_prepared: PreparedDeviceJoinObjectActivationCreateIntent
Fields
completion: DeviceProviderAdmissionCompletionActivationPrepared
The owner published the activation commit and has nothing left to do but hand the artifact over.
registration is the joined device’s, carried so the owner can tell
when that device has actually arrived: its announcement stream id is a
pure function of this reference, and a stream that appears in the
materialized frontier is the device’s own first commit — the one thing
it publishes that the owner did not write for it.
Fields
completion: DeviceProviderAdmissionCompletionactivation: DeviceJoinActivationregistration: StoreDeviceRegistrationRefSamePrincipalCompleted
The same-principal join completed, carried closure and all.
registration is the joined device’s, for the same reason
ActivationPrepared carries one: this row is
the largest a join writes — a snapshot’s metadata and the bootstrap
closure live inside join — and the owner needs to be able to tell when
the device it activated has arrived so the row can go.
Abandoned(DeviceJoinAbandonment)
Trait Implementations§
Source§impl Clone for OwnerJoinProgress
impl Clone for OwnerJoinProgress
Source§fn clone(&self) -> OwnerJoinProgress
fn clone(&self) -> OwnerJoinProgress
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for OwnerJoinProgress
impl Debug for OwnerJoinProgress
Source§impl<'de> Deserialize<'de> for OwnerJoinProgress
impl<'de> Deserialize<'de> for OwnerJoinProgress
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>,
Source§impl DeviceJoinRoleProgressKind for OwnerJoinProgress
impl DeviceJoinRoleProgressKind for OwnerJoinProgress
const ROLE: DeviceJoinRole = DeviceJoinRole::Owner
Source§impl From<OwnerJoinProgress> for DeviceJoinRoleProgress
impl From<OwnerJoinProgress> for DeviceJoinRoleProgress
Source§fn from(progress: OwnerJoinProgress) -> Self
fn from(progress: OwnerJoinProgress) -> Self
Source§impl PartialEq for OwnerJoinProgress
impl PartialEq for OwnerJoinProgress
Source§impl Serialize for OwnerJoinProgress
impl Serialize for OwnerJoinProgress
impl Eq for OwnerJoinProgress
impl StructuralPartialEq for OwnerJoinProgress
Auto Trait Implementations§
impl !Freeze for OwnerJoinProgress
impl RefUnwindSafe for OwnerJoinProgress
impl Send for OwnerJoinProgress
impl Sync for OwnerJoinProgress
impl Unpin for OwnerJoinProgress
impl UnsafeUnpin for OwnerJoinProgress
impl UnwindSafe for OwnerJoinProgress
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.