pub struct InterventionProxy<S>where
S: ControlledStore,{ /* private fields */ }Expand description
Intervention Proxy: durably admits operations, enforcing authorization, idempotency, monotonic stops, revision ordering, and queue admission barriers.
Implementations§
Source§impl<S> InterventionProxy<S>where
S: ControlledStore,
impl<S> InterventionProxy<S>where
S: ControlledStore,
pub fn new(store: S) -> InterventionProxy<S>
pub fn store(&self) -> &S
pub fn store_mut(&mut self) -> &mut S
Sourcepub fn admit(
&mut self,
principal: &VerifiedPrincipal,
request: AdmissionRequest,
) -> Result<AdmissionReceipt, AdmissionConflict>
pub fn admit( &mut self, principal: &VerifiedPrincipal, request: AdmissionRequest, ) -> Result<AdmissionReceipt, AdmissionConflict>
Admit an operation through the Proxy into the queue.
Sourcepub fn filter_graph_view<'a>(
&self,
principal: &VerifiedPrincipal,
graph_id: &str,
raw_graph_data: &'a Value,
) -> Result<&'a Value, AdmissionConflict>
pub fn filter_graph_view<'a>( &self, principal: &VerifiedPrincipal, graph_id: &str, raw_graph_data: &'a Value, ) -> Result<&'a Value, AdmissionConflict>
Filter inspected graph read model by the principal’s read authority.
Sourcepub fn filter_admitted_receipts(
&self,
principal: &VerifiedPrincipal,
receipts: &[AdmissionReceipt],
) -> Result<Vec<AdmissionReceipt>, AdmissionConflict>
pub fn filter_admitted_receipts( &self, principal: &VerifiedPrincipal, receipts: &[AdmissionReceipt], ) -> Result<Vec<AdmissionReceipt>, AdmissionConflict>
Filter a sequence of admitted receipts, returning only those readable by the principal.
Auto Trait Implementations§
impl<S> Forget for InterventionProxy<S>
impl<S> Freeze for InterventionProxy<S>where
S: Freeze,
impl<S> Move for InterventionProxy<S>
impl<S> RefUnwindSafe for InterventionProxy<S>where
S: RefUnwindSafe,
impl<S> Send for InterventionProxy<S>
impl<S> Sync for InterventionProxy<S>
impl<S> Unpin for InterventionProxy<S>where
S: Unpin,
impl<S> UnsafeUnpin for InterventionProxy<S>where
S: UnsafeUnpin,
impl<S> UnwindSafe for InterventionProxy<S>where
S: UnwindSafe,
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