kanidmd_lib::entry

Type Alias EntrySealedCommitted

Source
pub type EntrySealedCommitted = Entry<EntrySealed, EntryCommitted>;

Aliased Type§

struct EntrySealedCommitted { /* private fields */ }

Implementations

Source§

impl Entry<EntrySealed, EntryCommitted>

Source

pub fn insert_claim(&mut self, value: &str)

Insert a claim to this entry. This claim can NOT be persisted to disk, this is only used during a single Event session.

Source

pub fn compare(&self, rhs: &Entry<EntrySealed, EntryCommitted>) -> bool

Source

pub fn to_dbentry(&self) -> DbEntry

Serialise this entry to its Database format ready for storage.

Source

pub fn from_dbentry(db_e: DbEntry, id: u64) -> Option<Self>

Source

pub fn reduce_attributes( &self, allowed_attrs: &BTreeSet<Attribute>, effective_access: Option<Box<AccessEffectivePermission>>, ) -> Entry<EntryReduced, EntryCommitted>

Given a set of attributes that are allowed to be seen on this entry, process and remove all other values that are NOT allowed in this query.

Source

pub fn to_tombstone(&self, cid: Cid) -> Entry<EntryInvalid, EntryCommitted>

Convert this recycled entry, into a tombstone ready for reaping.

Source

pub fn into_valid( self, ecstate: EntryChangeState, ) -> Entry<EntryValid, EntryCommitted>

Given a current transaction change identifier, mark this entry as valid and committed.

Source

pub fn verify( &self, schema: &dyn SchemaTransaction, results: &mut Vec<Result<(), ConsistencyError>>, )

Source§

impl<STATE> Entry<EntrySealed, STATE>

Source

pub fn into_init(self) -> Entry<EntryInit, STATE>

Source§

impl<STATE> Entry<EntrySealed, STATE>
where STATE: Clone,

Source

pub fn invalidate(self, cid: Cid, trim_cid: &Cid) -> Entry<EntryInvalid, STATE>

Source

pub fn get_uuid(&self) -> Uuid

Source

pub fn get_changestate(&self) -> &EntryChangeState

Source§

impl<VALID> Entry<VALID, EntryCommitted>

Source

pub fn get_id(&self) -> u64

If this entry has ever been committed to disk, retrieve its database id number.

Source§

impl<VALID, STATE> Entry<VALID, STATE>

Source

pub fn get_ava_names(&self) -> impl Iterator<Item = &str>

Get an iterator over the current set of attribute names that this entry contains.

Source

pub fn get_ava(&self) -> &Eattrs

Get an iterator over the current set of values for an attribute name.

Source

pub fn get_ava_iter(&self) -> impl Iterator<Item = (&Attribute, &ValueSet)>

Source

pub fn get_ava_set<A: AsRef<Attribute>>(&self, attr: A) -> Option<&ValueSet>

Return a reference to the current set of values that are associated to this attribute.

Source

pub fn get_ava_refer<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeSet<Uuid>>

Source

pub fn get_ava_as_iutf8_iter<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<impl Iterator<Item = &str>>

Source

pub fn get_ava_as_iutf8<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeSet<String>>

Source

pub fn get_ava_as_image<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&HashSet<ImageValue>>

Source

pub fn get_ava_single_image<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<ImageValue>

Source

pub fn get_ava_single_credential_type<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<CredentialType>

Source

pub fn get_ava_as_oauthscopes<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<impl Iterator<Item = &str>>

Source

pub fn get_ava_as_oauthscopemaps<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeMap<Uuid, BTreeSet<String>>>

Source

pub fn get_ava_as_intenttokens<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeMap<String, IntentTokenState>>

Source

pub fn get_ava_as_session_map<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeMap<Uuid, Session>>

Source

pub fn get_ava_as_apitoken_map<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeMap<Uuid, ApiToken>>

Source

pub fn get_ava_as_oauth2session_map<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeMap<Uuid, Oauth2Session>>

Source

pub fn get_ava_iter_iname<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<impl Iterator<Item = &str>>

If possible, return an iterator over the set of values transformed into a &str.

Source

pub fn get_ava_iter_iutf8<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<impl Iterator<Item = &str>>

If possible, return an iterator over the set of values transformed into a &str.

Source

pub fn get_ava_as_refuuid<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<Box<dyn Iterator<Item = Uuid> + '_>>

If possible, return an iterator over the set of values transformed into a Uuid.

Source

pub fn get_ava_iter_sshpubkeys<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<impl Iterator<Item = String> + '_>

If possible, return an iterator over the set of ssh key values transformed into a &str.

Source

pub fn get_ava_single<A: AsRef<Attribute>>(&self, attr: A) -> Option<Value>

Return a single value of this attributes name, or None if it is NOT present, or there are multiple values present (ambiguous).

Source

pub fn get_ava_single_proto_string<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<String>

Source

pub fn get_ava_single_bool<A: AsRef<Attribute>>(&self, attr: A) -> Option<bool>

Return a single bool, if valid to transform this value into a boolean.

Source

pub fn get_ava_single_uint32<A: AsRef<Attribute>>(&self, attr: A) -> Option<u32>

Return a single uint32, if valid to transform this value.

Source

pub fn get_ava_single_syntax<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<SyntaxType>

Return a single syntax type, if valid to transform this value.

Source

pub fn get_ava_single_credential<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&Credential>

Return a single credential, if valid to transform this value.

Source

pub fn get_ava_passkeys<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeMap<Uuid, (String, PasskeyV4)>>

Get the set of passkeys on this account, if any are present.

Source

pub fn get_ava_attestedpasskeys<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeMap<Uuid, (String, AttestedPasskeyV4)>>

Get the set of devicekeys on this account, if any are present.

Source

pub fn get_ava_uihint<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeSet<UiHint>>

Get the set of uihints on this account, if any are present.

Source

pub fn get_ava_single_secret<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&str>

Return a single secret value, if valid to transform this value.

Source

pub fn get_ava_single_datetime<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<OffsetDateTime>

Return a single datetime, if valid to transform this value.

Source

pub fn get_ava_single_url<A: AsRef<Attribute>>(&self, attr: A) -> Option<&Url>

Return a single &Url, if valid to transform this value.

Source

pub fn get_ava_single_uuid<A: AsRef<Attribute>>(&self, attr: A) -> Option<Uuid>

Source

pub fn get_ava_single_refer<A: AsRef<Attribute>>(&self, attr: A) -> Option<Uuid>

Source

pub fn get_ava_mail_primary<A: AsRef<Attribute>>(&self, attr: A) -> Option<&str>

Source

pub fn get_ava_iter_mail<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<impl Iterator<Item = &str>>

Source

pub fn get_ava_single_protofilter<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&ProtoFilter>

Return a single protocol filter, if valid to transform this value.

Source

pub fn get_ava_single_private_binary<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&[u8]>

Source

pub fn get_ava_single_jws_key_es256<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&JwsEs256Signer>

Source

pub fn get_ava_single_eckey_private<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&EcKey<Private>>

Source

pub fn get_ava_single_eckey_public<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&EcKey<Public>>

Source

pub fn get_ava_webauthn_attestation_ca_list<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&AttestationCaList>

Source

pub fn get_ava_application_password<A: AsRef<Attribute>>( &self, attr: A, ) -> Option<&BTreeMap<Uuid, Vec<ApplicationPassword>>>

Source

pub fn attribute_pres<A: AsRef<Attribute>>(&self, attr: A) -> bool

Assert if an attribute of this name is present on this entry.

Source

pub fn attribute_equality<A: AsRef<Attribute>>( &self, attr: A, value: &PartialValue, ) -> bool

Assert if an attribute of this name is present, and one of its values contains an exact match of this partial value.

Source

pub fn attribute_substring<A: AsRef<Attribute>>( &self, attr: A, subvalue: &PartialValue, ) -> bool

Assert if an attribute of this name is present, and one of it’s values contains the following substring, if possible to perform the substring comparison.

Source

pub fn attribute_startswith<A: AsRef<Attribute>>( &self, attr: A, subvalue: &PartialValue, ) -> bool

Assert if an attribute of this name is present, and one of its values startswith the following string, if possible to perform the comparison.

Source

pub fn attribute_endswith<A: AsRef<Attribute>>( &self, attr: A, subvalue: &PartialValue, ) -> bool

Assert if an attribute of this name is present, and one of its values startswith the following string, if possible to perform the comparison.

Source

pub fn attribute_lessthan<A: AsRef<Attribute>>( &self, attr: A, subvalue: &PartialValue, ) -> bool

Assert if an attribute of this name is present, and one of its values is less than the following partial value

Source

pub fn entry_match_no_index(&self, filter: &Filter<FilterValidResolved>) -> bool

Test if the following filter applies to and matches this entry.

Source

pub fn filter_from_attrs( &self, attrs: &[Attribute], ) -> Option<Filter<FilterInvalid>>

Given this entry, generate a filter containing the requested attributes strings as equality components.

Source

pub fn gen_modlist_assert( &self, schema: &dyn SchemaTransaction, ) -> Result<ModifyList<ModifyInvalid>, SchemaError>

Given this entry, generate a modification list that would “assert” another entry is in the same/identical attribute state.

Source

pub fn mask_recycled_ts(&self) -> Option<&Self>

Determine if this entry is recycled or a tombstone, and map that to “None”. This allows filter_map to effectively remove entries that should not be considered as “alive”.

Source

pub fn mask_recycled(&self) -> Option<&Self>

Determine if this entry is recycled, and map that to “None”. This allows filter_map to effectively remove entries that are recycled in some cases.

Source

pub fn mask_tombstone(&self) -> Option<&Self>

Determine if this entry is a tombstone, and map that to “None”. This allows filter_map to effectively remove entries that are tombstones in some cases.

Trait Implementations

Source§

impl<VALID, STATE> Clone for Entry<VALID, STATE>
where VALID: Clone, STATE: Clone,

Source§

fn clone(&self) -> Entry<VALID, STATE>

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<VALID, STATE> Debug for Entry<VALID, STATE>
where STATE: Debug, VALID: Debug,

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<STATE> Display for Entry<EntrySealed, STATE>
where STATE: Clone,

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<STATE> GetUuid for Entry<EntrySealed, STATE>
where STATE: Clone,

Source§

fn get_uuid(&self) -> Uuid

Source§

impl<VALID, STATE> PartialEq for Entry<VALID, STATE>

Source§

fn eq(&self, rhs: &Entry<VALID, STATE>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.