pub struct GroupContacts {
pub emails: Vec<String>,
}Expand description
Value stored in the group_contacts KV bucket, keyed by group name.
Holds the email addresses that should receive notifications targeted
at the group — e.g. a compliance alert’s notify_groups. Operator-
managed via the SPA Groups page, parallel to (but separate from)
agent_groups membership: membership is per-PC, contact is per-group.
A wrapper struct (rather than a bare Vec<String>) leaves room for
future per-group contact metadata (a display name, a phone/IM hook)
without breaking the wire format.
Fields§
§emails: Vec<String>Normalised email addresses: trimmed, lower-cased, de-duplicated,
sorted, with blanks dropped. Use GroupContacts::new so two
callers that enter the same set (any case/order) store identical
JSON.
Implementations§
Trait Implementations§
Source§impl Clone for GroupContacts
impl Clone for GroupContacts
Source§fn clone(&self) -> GroupContacts
fn clone(&self) -> GroupContacts
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for GroupContacts
impl Debug for GroupContacts
Source§impl Default for GroupContacts
impl Default for GroupContacts
Source§fn default() -> GroupContacts
fn default() -> GroupContacts
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for GroupContacts
impl<'de> Deserialize<'de> for GroupContacts
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for GroupContacts
Source§impl PartialEq for GroupContacts
impl PartialEq for GroupContacts
Source§fn eq(&self, other: &GroupContacts) -> bool
fn eq(&self, other: &GroupContacts) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for GroupContacts
impl Serialize for GroupContacts
impl StructuralPartialEq for GroupContacts
Auto Trait Implementations§
impl Freeze for GroupContacts
impl RefUnwindSafe for GroupContacts
impl Send for GroupContacts
impl Sync for GroupContacts
impl Unpin for GroupContacts
impl UnsafeUnpin for GroupContacts
impl UnwindSafe for GroupContacts
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.