pub enum MsgSecretPolicy {
Managed,
BotOnly,
Full,
Disabled,
}Expand description
How the core manages messageSecret persistence.
Variants§
Managed
Bounded default: capture live secrets, seed only the still-relevant slice of history, and prune by a per-kind event-time horizon.
BotOnly
Pre-#665 behavior: only capture/seed secrets in bot contexts.
Full
Capture and seed everything, never prune (unbounded retention).
Disabled
Persist nothing in core. Add-on decryption relies entirely on an
app-supplied OriginalMessageResolver; without one, add-ons whose
parent secret the core never saw simply will not decrypt.
Implementations§
Source§impl MsgSecretPolicy
impl MsgSecretPolicy
Sourcepub fn prunes(self) -> bool
pub fn prunes(self) -> bool
Whether the periodic prune sweep should run. Everything except Full
prunes: Managed/BotOnly reap their own expired rows, and Disabled
still reaps legacy rows left by a prior policy (it just writes no new
ones). Only Full keeps everything forever.
Sourcepub fn bounds_retention(self) -> bool
pub fn bounds_retention(self) -> bool
Whether rows written under this policy get a finite deadline. Only
Managed/BotOnly do; Full writes never-expire rows and Disabled
writes none.
Trait Implementations§
Source§impl Clone for MsgSecretPolicy
impl Clone for MsgSecretPolicy
Source§fn clone(&self) -> MsgSecretPolicy
fn clone(&self) -> MsgSecretPolicy
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for MsgSecretPolicy
Source§impl Debug for MsgSecretPolicy
impl Debug for MsgSecretPolicy
Source§impl Default for MsgSecretPolicy
impl Default for MsgSecretPolicy
Source§fn default() -> MsgSecretPolicy
fn default() -> MsgSecretPolicy
impl Eq for MsgSecretPolicy
Source§impl PartialEq for MsgSecretPolicy
impl PartialEq for MsgSecretPolicy
impl StructuralPartialEq for MsgSecretPolicy
Auto Trait Implementations§
impl Freeze for MsgSecretPolicy
impl RefUnwindSafe for MsgSecretPolicy
impl Send for MsgSecretPolicy
impl Sync for MsgSecretPolicy
impl Unpin for MsgSecretPolicy
impl UnsafeUnpin for MsgSecretPolicy
impl UnwindSafe for MsgSecretPolicy
Blanket Implementations§
Source§impl<T> AggregateExpressionMethods for T
impl<T> AggregateExpressionMethods for T
Source§fn aggregate_distinct(self) -> Self::Outputwhere
Self: DistinctDsl,
fn aggregate_distinct(self) -> Self::Outputwhere
Self: DistinctDsl,
DISTINCT modifier for aggregate functions Read moreSource§fn aggregate_all(self) -> Self::Outputwhere
Self: AllDsl,
fn aggregate_all(self) -> Self::Outputwhere
Self: AllDsl,
ALL modifier for aggregate functions Read moreSource§fn aggregate_filter<P>(self, f: P) -> Self::Output
fn aggregate_filter<P>(self, f: P) -> Self::Output
Source§fn aggregate_order<O>(self, o: O) -> Self::Outputwhere
Self: OrderAggregateDsl<O>,
fn aggregate_order<O>(self, o: O) -> Self::Outputwhere
Self: OrderAggregateDsl<O>,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> IntoSql for T
impl<T> IntoSql for T
Source§fn into_sql<T>(self) -> Self::Expression
fn into_sql<T>(self) -> Self::Expression
self to an expression for Diesel’s query builder. Read moreSource§fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expression
fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expression
&self to an expression for Diesel’s query builder. Read more