pub struct InMemoryDirectiveStore { /* private fields */ }Expand description
The in-process reference store: a controller (or an admin endpoint) publishes
a new set and proxy threads load it. Swappable for a distributed
DirectiveStore without touching the pipeline (docs/05 §3).
Implementations§
Source§impl InMemoryDirectiveStore
impl InMemoryDirectiveStore
Sourcepub fn with_directives(self, set: DirectiveSet) -> Self
pub fn with_directives(self, set: DirectiveSet) -> Self
Seeds the store with an initial directive set (builder style).
Sourcepub fn publish(&self, set: DirectiveSet)
pub fn publish(&self, set: DirectiveSet)
Replaces the active set, the fleet-wide “flip” an operator performs. The
next load on every thread sees it (no restart). A lock-free atomic store.
Trait Implementations§
Source§impl Debug for InMemoryDirectiveStore
impl Debug for InMemoryDirectiveStore
Source§impl Default for InMemoryDirectiveStore
impl Default for InMemoryDirectiveStore
Source§fn default() -> InMemoryDirectiveStore
fn default() -> InMemoryDirectiveStore
Returns the “default value” for a type. Read more
Source§impl DirectiveStore for InMemoryDirectiveStore
impl DirectiveStore for InMemoryDirectiveStore
Source§fn load(&self) -> Arc<DirectiveSet>
fn load(&self) -> Arc<DirectiveSet>
The currently active directive set. Called on the request hot path, so it
must be cheap (an
Arc clone of a cached snapshot), never blocking I/O.Auto Trait Implementations§
impl !Freeze for InMemoryDirectiveStore
impl RefUnwindSafe for InMemoryDirectiveStore
impl Send for InMemoryDirectiveStore
impl Sync for InMemoryDirectiveStore
impl Unpin for InMemoryDirectiveStore
impl UnsafeUnpin for InMemoryDirectiveStore
impl UnwindSafe for InMemoryDirectiveStore
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