Skip to main content

ApplicationObservationRequest

Struct ApplicationObservationRequest 

Source
pub struct ApplicationObservationRequest<'a> { /* private fields */ }
Expand description

Exact separately reserved application recovery update for an unresolved mutation.

This consumes the observation lane, even when its opaque method reads status. It never reuses mutation allowance or supplies application settlement semantics.

Implementations§

Source§

impl<'a> ApplicationObservationRequest<'a>

Source

pub fn new( plan: &'a OperationPlanRecord, sequence: u64, journal: &AttemptJournalRecord, payload: &'a ApplicationIngressPayload, ) -> Result<Self, ApplicationIngressError>

Bind exact recovery bytes to the independently reserved observation digest.

§Errors

Rejects changed authority/target, absent attempts or different reserved bytes.

Source

pub const fn plan(&self) -> &OperationPlanRecord

Read the complete original mutation plan/context and inventory.

Source

pub const fn payload(&self) -> &ApplicationIngressPayload

Read exact original recovery update fields.

Source

pub const fn authority(&self) -> &AttemptAuthorityRecord

Read original authority; its request still names the unresolved mutation.

Source

pub const fn mutation_attempt(&self) -> u32

Read the original unresolved mutation attempt.

Source

pub const fn observation_attempt(&self) -> u32

Read the independently consumed observation attempt.

Source

pub fn validate_journal( &self, journal: &AttemptJournalRecord, ) -> Result<(), ApplicationIngressError>

Recheck exact current observation identity without a dispatch permit.

§Errors

Rejects settled/replaced attempts, changed authority or different reserved bytes.

Trait Implementations§

Source§

impl<'a> Debug for ApplicationObservationRequest<'a>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.