#[non_exhaustive]pub struct AttributeTypesSelector {
pub attribute_matching_model: AttributeMatchingModel,
pub address: Option<Vec<String>>,
pub phone_number: Option<Vec<String>>,
pub email_address: Option<Vec<String>>,
}
Expand description
Configuration information about the AttributeTypesSelector
where the rule-based identity resolution uses to match profiles. You can choose how profiles are compared across attribute types and which attribute to use for matching from each type. There are three attribute types you can configure:
-
Email type
-
You can choose from
Email
,BusinessEmail
, andPersonalEmail
-
-
Phone number type
-
You can choose from
Phone
,HomePhone
, andMobilePhone
-
-
Address type
-
You can choose from
Address
,BusinessAddress
,MaillingAddress
, andShippingAddress
-
You can either choose ONE_TO_ONE
or MANY_TO_MANY
as the AttributeMatchingModel
. When choosing MANY_TO_MANY
, the system can match attribute across the sub-types of an attribute type. For example, if the value of the Email
field of Profile A and the value of BusinessEmail
field of Profile B matches, the two profiles are matched on the Email type. When choosing ONE_TO_ONE
the system can only match if the sub-types are exact matches. For example, only when the value of the Email
field of Profile A and the value of the Email
field of Profile B matches, the two profiles are matched on the Email type.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.attribute_matching_model: AttributeMatchingModel
Configures the AttributeMatchingModel
, you can either choose ONE_TO_ONE
or MANY_TO_MANY
.
address: Option<Vec<String>>
The Address
type. You can choose from Address
, BusinessAddress
, MaillingAddress
, and ShippingAddress
.
You only can use the Address type in the MatchingRule
. For example, if you want to match profile based on BusinessAddress.City
or MaillingAddress.City
, you need to choose the BusinessAddress
and the MaillingAddress
to represent the Address type and specify the Address.City
on the matching rule.
phone_number: Option<Vec<String>>
The PhoneNumber
type. You can choose from PhoneNumber
, HomePhoneNumber
, and MobilePhoneNumber
.
You only can use the PhoneNumber
type in the MatchingRule
. For example, if you want to match a profile based on Phone
or HomePhone
, you need to choose the Phone
and the HomePhone
to represent the PhoneNumber
type and only specify the PhoneNumber
on the matching rule.
email_address: Option<Vec<String>>
The Email
type. You can choose from EmailAddress
, BusinessEmailAddress
and PersonalEmailAddress
.
You only can use the EmailAddress
type in the MatchingRule
. For example, if you want to match profile based on PersonalEmailAddress
or BusinessEmailAddress
, you need to choose the PersonalEmailAddress
and the BusinessEmailAddress
to represent the EmailAddress
type and only specify the EmailAddress
on the matching rule.
Implementations§
source§impl AttributeTypesSelector
impl AttributeTypesSelector
sourcepub fn attribute_matching_model(&self) -> &AttributeMatchingModel
pub fn attribute_matching_model(&self) -> &AttributeMatchingModel
Configures the AttributeMatchingModel
, you can either choose ONE_TO_ONE
or MANY_TO_MANY
.
sourcepub fn address(&self) -> &[String]
pub fn address(&self) -> &[String]
The Address
type. You can choose from Address
, BusinessAddress
, MaillingAddress
, and ShippingAddress
.
You only can use the Address type in the MatchingRule
. For example, if you want to match profile based on BusinessAddress.City
or MaillingAddress.City
, you need to choose the BusinessAddress
and the MaillingAddress
to represent the Address type and specify the Address.City
on the matching rule.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .address.is_none()
.
sourcepub fn phone_number(&self) -> &[String]
pub fn phone_number(&self) -> &[String]
The PhoneNumber
type. You can choose from PhoneNumber
, HomePhoneNumber
, and MobilePhoneNumber
.
You only can use the PhoneNumber
type in the MatchingRule
. For example, if you want to match a profile based on Phone
or HomePhone
, you need to choose the Phone
and the HomePhone
to represent the PhoneNumber
type and only specify the PhoneNumber
on the matching rule.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .phone_number.is_none()
.
sourcepub fn email_address(&self) -> &[String]
pub fn email_address(&self) -> &[String]
The Email
type. You can choose from EmailAddress
, BusinessEmailAddress
and PersonalEmailAddress
.
You only can use the EmailAddress
type in the MatchingRule
. For example, if you want to match profile based on PersonalEmailAddress
or BusinessEmailAddress
, you need to choose the PersonalEmailAddress
and the BusinessEmailAddress
to represent the EmailAddress
type and only specify the EmailAddress
on the matching rule.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .email_address.is_none()
.
source§impl AttributeTypesSelector
impl AttributeTypesSelector
sourcepub fn builder() -> AttributeTypesSelectorBuilder
pub fn builder() -> AttributeTypesSelectorBuilder
Creates a new builder-style object to manufacture AttributeTypesSelector
.
Trait Implementations§
source§impl Clone for AttributeTypesSelector
impl Clone for AttributeTypesSelector
source§fn clone(&self) -> AttributeTypesSelector
fn clone(&self) -> AttributeTypesSelector
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for AttributeTypesSelector
impl Debug for AttributeTypesSelector
source§impl PartialEq for AttributeTypesSelector
impl PartialEq for AttributeTypesSelector
source§fn eq(&self, other: &AttributeTypesSelector) -> bool
fn eq(&self, other: &AttributeTypesSelector) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for AttributeTypesSelector
Auto Trait Implementations§
impl Freeze for AttributeTypesSelector
impl RefUnwindSafe for AttributeTypesSelector
impl Send for AttributeTypesSelector
impl Sync for AttributeTypesSelector
impl Unpin for AttributeTypesSelector
impl UnwindSafe for AttributeTypesSelector
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
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more