pub struct RevocationCache { /* private fields */ }Expand description
A cache of RFC-ACDP-0014 revocation facts and discovery-freshness
markers, injectable into a crate::RegistryClient via
crate::RegistryClient::with_revocation_cache.
Clone, cheap (an Arc handle around a Mutex<HashMap<..>>>, following
the same hand-rolled-bound pattern CrossRegistryResolver already uses
for client_cache/caps_cache — see crate::cross_registry). Sharing
one clone across multiple RegistryClients (or multiple producers’
verify calls) is the point: it is how a caller amortizes discovery
across many verify_retrieved calls against the same producer, and how
issue #260’s cross-registry walk will later share one cache across the
per-authority clients it builds.
Attaching a cache changes nothing observable by itself: with the default
freshness: Duration::ZERO (both RevocationDiscovery named
constructors), markers never suppress a lookup — see
marker_fresh’s fast path (crate-private). The only behavioral change from
attaching a cache at the default is anti-rollback (facts persisting
across an induced discovery failure); saving requests is a further,
opt-in step that requires setting freshness above zero.
Implementations§
Trait Implementations§
Source§impl Clone for RevocationCache
impl Clone for RevocationCache
Source§fn clone(&self) -> RevocationCache
fn clone(&self) -> RevocationCache
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more