pub trait RevocationWriter: Send + Sync {
// Required methods
fn revoke<'life0, 'life1, 'async_trait>(
&'life0 self,
entry: &'life1 Revoked,
) -> Pin<Box<dyn Future<Output = Result<(), StoreError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn snapshot<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<RevocationSnapshot, StoreError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
}Expand description
Origin-side revocation log. Held by
SessionAuthority on the cold path and
by RevocationPublisher.
Required Methods§
Sourcefn revoke<'life0, 'life1, 'async_trait>(
&'life0 self,
entry: &'life1 Revoked,
) -> Pin<Box<dyn Future<Output = Result<(), StoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn revoke<'life0, 'life1, 'async_trait>(
&'life0 self,
entry: &'life1 Revoked,
) -> Pin<Box<dyn Future<Output = Result<(), StoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Add entry to the set, advancing the epoch (next_epoch) in the same
atomic write. An identity already present keeps the larger bound
(Revoked::cmp_bound); the epoch advances only when a row was
inserted or its bound rose. Idempotent — re-revoking with an equal
or lower bound is a no-op, not an error, and leaves the epoch alone. Propagation to edge
cheers_verify::RevocationReaders is asynchronous (see the module
contract).
Sourcefn snapshot<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<RevocationSnapshot, StoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn snapshot<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<RevocationSnapshot, StoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
The current epoch and entries, read as one consistent view: the
contents are exactly those the epoch was advanced to. Includes lapsed
jtis that gc has not yet removed; RevocationPublisher::current
filters those.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".