Package com.unboundid.ldap.matchingrules
Class TelephoneNumberMatchingRule
- java.lang.Object
-
- com.unboundid.ldap.matchingrules.MatchingRule
-
- com.unboundid.ldap.matchingrules.SimpleMatchingRule
-
- com.unboundid.ldap.matchingrules.TelephoneNumberMatchingRule
-
- All Implemented Interfaces:
java.io.Serializable
@ThreadSafety(level=COMPLETELY_THREADSAFE) public final class TelephoneNumberMatchingRule extends SimpleMatchingRule
This class provides an implementation of a matching rule that may be used for telephone numbers. It will accept values with any ASCII printable character. When making comparisons, spaces and dashes will be ignored.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
DEFAULT_COMPARISON_POLICY_PROPERTY
The name of the system property that may be used to specify the default comparison policy.static java.lang.String
DEFAULT_VALIDATION_POLICY_PROPERTY
The name of the system property that may be used to specify the default validation policy.static java.lang.String
EQUALITY_RULE_NAME
The name for the telephoneNumberMatch equality matching rule.static java.lang.String
EQUALITY_RULE_OID
The OID for the telephoneNumberMatch equality matching rule.static java.lang.String
SUBSTRING_RULE_NAME
The name for the telephoneNumberSubstringsMatch substring matching rule.static java.lang.String
SUBSTRING_RULE_OID
The OID for the telephoneNumberSubstringsMatch substring matching rule.-
Fields inherited from class com.unboundid.ldap.matchingrules.MatchingRule
SUBSTRING_TYPE_SUBANY, SUBSTRING_TYPE_SUBFINAL, SUBSTRING_TYPE_SUBINITIAL
-
-
Constructor Summary
Constructors Constructor Description TelephoneNumberMatchingRule()
Creates a new instance of this telephone number matching rule with the default validation and comparison policies.TelephoneNumberMatchingRule(TelephoneNumberValidationPolicy validationPolicy, TelephoneNumberComparisonPolicy comparisonPolicy)
Creates a new instance of this telephone number matching rule with the specified validation and comparison policies.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compareValues(ASN1OctetString value1, ASN1OctetString value2)
Compares the provided values to determine their relative order in a sorted list.TelephoneNumberComparisonPolicy
getComparisonPolicy()
Retrieves the policy that will be used for comparing telephone number values.static TelephoneNumberComparisonPolicy
getDefaultComparisonPolicy()
Retrieves the policy that will be used for comparing telephone number values when creating an instance of this matching rule using the default constructor.static TelephoneNumberValidationPolicy
getDefaultValidationPolicy()
Retrieves the policy that will be used for validating telephone number values when creating an instance of this matching rule using the default constructor.java.lang.String
getEqualityMatchingRuleName()
Retrieves the name for this matching rule when used to perform equality matching, if appropriate.java.lang.String
getEqualityMatchingRuleOID()
Retrieves the OID for this matching rule when used to perform equality matching, if appropriate.static TelephoneNumberMatchingRule
getInstance()
Retrieves a singleton instance of this matching rule.java.lang.String
getOrderingMatchingRuleName()
Retrieves the name for this matching rule when used to perform ordering matching, if appropriate.java.lang.String
getOrderingMatchingRuleOID()
Retrieves the OID for this matching rule when used to perform ordering matching, if appropriate.java.lang.String
getSubstringMatchingRuleName()
Retrieves the name for this matching rule when used to perform substring matching, if appropriate.java.lang.String
getSubstringMatchingRuleOID()
Retrieves the OID for this matching rule when used to perform substring matching, if appropriate.TelephoneNumberValidationPolicy
getValidationPolicy()
Retrieves the policy that will be used for validating telephone number values.ASN1OctetString
normalize(ASN1OctetString value)
Normalizes the provided value for easier matching.ASN1OctetString
normalizeSubstring(ASN1OctetString value, byte substringType)
Normalizes the provided value for use as part of a substring assertion.static void
setDefaultComparisonPolicy(TelephoneNumberComparisonPolicy defaultComparisonPolicy)
Specifies the policy that will be used for comparing telephone number values when creating an instance of this matching rule using the default constructor.static void
setDefaultValidationPolicy(TelephoneNumberValidationPolicy defaultValidationPolicy)
Specifies the policy that will be used for validating telephone number values when creating an instance of this matching rule using the default constructor.-
Methods inherited from class com.unboundid.ldap.matchingrules.SimpleMatchingRule
matchesAnyValue, matchesSubstring, valuesMatch
-
Methods inherited from class com.unboundid.ldap.matchingrules.MatchingRule
getDefaultEqualityMatchingRule, getDefaultOrderingMatchingRule, getDefaultSubstringMatchingRule, getEqualityMatchingRuleNameOrOID, getOrderingMatchingRuleNameOrOID, getSubstringMatchingRuleNameOrOID, selectEqualityMatchingRule, selectEqualityMatchingRule, selectEqualityMatchingRule, selectMatchingRuleForSyntax, selectOrderingMatchingRule, selectOrderingMatchingRule, selectOrderingMatchingRule, selectSubstringMatchingRule, selectSubstringMatchingRule, selectSubstringMatchingRule
-
-
-
-
Field Detail
-
DEFAULT_COMPARISON_POLICY_PROPERTY
@NotNull public static final java.lang.String DEFAULT_COMPARISON_POLICY_PROPERTY
The name of the system property that may be used to specify the default comparison policy. If this is not specified, and if the default value is not overridden by thesetDefaultComparisonPolicy(com.unboundid.ldap.matchingrules.TelephoneNumberComparisonPolicy)
method, then a default policy ofTelephoneNumberComparisonPolicy.IGNORE_ALL_NON_NUMERIC_CHARACTERS
will be used.
-
DEFAULT_VALIDATION_POLICY_PROPERTY
@NotNull public static final java.lang.String DEFAULT_VALIDATION_POLICY_PROPERTY
The name of the system property that may be used to specify the default validation policy. If this is not specified, and if the default value is not overridden by thesetDefaultValidationPolicy(com.unboundid.ldap.matchingrules.TelephoneNumberValidationPolicy)
method, then a default policy ofTelephoneNumberValidationPolicy.ALLOW_NON_EMPTY_PRINTABLE_STRING
will be used.
-
EQUALITY_RULE_NAME
@NotNull public static final java.lang.String EQUALITY_RULE_NAME
The name for the telephoneNumberMatch equality matching rule.- See Also:
- Constant Field Values
-
EQUALITY_RULE_OID
@NotNull public static final java.lang.String EQUALITY_RULE_OID
The OID for the telephoneNumberMatch equality matching rule.- See Also:
- Constant Field Values
-
SUBSTRING_RULE_NAME
@NotNull public static final java.lang.String SUBSTRING_RULE_NAME
The name for the telephoneNumberSubstringsMatch substring matching rule.- See Also:
- Constant Field Values
-
SUBSTRING_RULE_OID
@NotNull public static final java.lang.String SUBSTRING_RULE_OID
The OID for the telephoneNumberSubstringsMatch substring matching rule.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
TelephoneNumberMatchingRule
public TelephoneNumberMatchingRule()
Creates a new instance of this telephone number matching rule with the default validation and comparison policies.
-
TelephoneNumberMatchingRule
public TelephoneNumberMatchingRule(@NotNull TelephoneNumberValidationPolicy validationPolicy, @NotNull TelephoneNumberComparisonPolicy comparisonPolicy)
Creates a new instance of this telephone number matching rule with the specified validation and comparison policies.- Parameters:
validationPolicy
- The policy to use when validating telephone number values. It must not benull
.comparisonPolicy
- The policy to use when comparing telephone number values. It must not benull
.
-
-
Method Detail
-
getInstance
@NotNull public static TelephoneNumberMatchingRule getInstance()
Retrieves a singleton instance of this matching rule.- Returns:
- A singleton instance of this matching rule.
-
getValidationPolicy
@NotNull public TelephoneNumberValidationPolicy getValidationPolicy()
Retrieves the policy that will be used for validating telephone number values.- Returns:
- The policy that will be used for validating telephone number values.
-
getDefaultValidationPolicy
@NotNull public static TelephoneNumberValidationPolicy getDefaultValidationPolicy()
Retrieves the policy that will be used for validating telephone number values when creating an instance of this matching rule using the default constructor.- Returns:
- The policy that will be used for validating telephone number values when creating an instance of this matching rule using the default constructor.
-
setDefaultValidationPolicy
public static void setDefaultValidationPolicy(@NotNull TelephoneNumberValidationPolicy defaultValidationPolicy)
Specifies the policy that will be used for validating telephone number values when creating an instance of this matching rule using the default constructor.- Parameters:
defaultValidationPolicy
- The policy that will be used for validating telephone number values when creating an instance of this matching rule using the default constructor.
-
getComparisonPolicy
@NotNull public TelephoneNumberComparisonPolicy getComparisonPolicy()
Retrieves the policy that will be used for comparing telephone number values.- Returns:
- The policy that will be used for comparing telephone number values.
-
getDefaultComparisonPolicy
@NotNull public static TelephoneNumberComparisonPolicy getDefaultComparisonPolicy()
Retrieves the policy that will be used for comparing telephone number values when creating an instance of this matching rule using the default constructor.- Returns:
- The policy that will be used for comparing telephone number values when creating an instance of this matching rule using the default constructor.
-
setDefaultComparisonPolicy
public static void setDefaultComparisonPolicy(@NotNull TelephoneNumberComparisonPolicy defaultComparisonPolicy)
Specifies the policy that will be used for comparing telephone number values when creating an instance of this matching rule using the default constructor.- Parameters:
defaultComparisonPolicy
- The policy that will be used for comparing telephone number values when creating an instance of this matching rule using the default constructor.
-
getEqualityMatchingRuleName
@NotNull public java.lang.String getEqualityMatchingRuleName()
Retrieves the name for this matching rule when used to perform equality matching, if appropriate.- Specified by:
getEqualityMatchingRuleName
in classMatchingRule
- Returns:
- The name for this matching rule when used to perform equality
matching, or
null
if this matching rule is not intended to be used for equality matching.
-
getEqualityMatchingRuleOID
@NotNull public java.lang.String getEqualityMatchingRuleOID()
Retrieves the OID for this matching rule when used to perform equality matching, if appropriate.- Specified by:
getEqualityMatchingRuleOID
in classMatchingRule
- Returns:
- The OID for this matching rule when used to perform equality
matching, or
null
if this matching rule is not intended to be used for equality matching.
-
getOrderingMatchingRuleName
@Nullable public java.lang.String getOrderingMatchingRuleName()
Retrieves the name for this matching rule when used to perform ordering matching, if appropriate.- Specified by:
getOrderingMatchingRuleName
in classMatchingRule
- Returns:
- The name for this matching rule when used to perform ordering
matching, or
null
if this matching rule is not intended to be used for ordering matching.
-
getOrderingMatchingRuleOID
@Nullable public java.lang.String getOrderingMatchingRuleOID()
Retrieves the OID for this matching rule when used to perform ordering matching, if appropriate.- Specified by:
getOrderingMatchingRuleOID
in classMatchingRule
- Returns:
- The OID for this matching rule when used to perform ordering
matching, or
null
if this matching rule is not intended to be used for ordering matching.
-
getSubstringMatchingRuleName
@NotNull public java.lang.String getSubstringMatchingRuleName()
Retrieves the name for this matching rule when used to perform substring matching, if appropriate.- Specified by:
getSubstringMatchingRuleName
in classMatchingRule
- Returns:
- The name for this matching rule when used to perform substring
matching, or
null
if this matching rule is not intended to be used for substring matching.
-
getSubstringMatchingRuleOID
@NotNull public java.lang.String getSubstringMatchingRuleOID()
Retrieves the OID for this matching rule when used to perform substring matching, if appropriate.- Specified by:
getSubstringMatchingRuleOID
in classMatchingRule
- Returns:
- The OID for this matching rule when used to perform substring
matching, or
null
if this matching rule is not intended to be used for substring matching.
-
compareValues
public int compareValues(@NotNull ASN1OctetString value1, @NotNull ASN1OctetString value2) throws LDAPException
Compares the provided values to determine their relative order in a sorted list.- Overrides:
compareValues
in classSimpleMatchingRule
- Parameters:
value1
- The first value to compare.value2
- The second value to compare.- Returns:
- A negative value if
value1
should come beforevalue2
in a sorted list, a positive value ifvalue1
should come aftervalue2
in a sorted list, or zero if the values are equal or there is no distinction between their orders in a sorted list. - Throws:
LDAPException
- If a problem occurs while making the determination, or if this matching rule does not support ordering matching.
-
normalize
@NotNull public ASN1OctetString normalize(@NotNull ASN1OctetString value) throws LDAPException
Normalizes the provided value for easier matching.- Specified by:
normalize
in classMatchingRule
- Parameters:
value
- The value to be normalized.- Returns:
- The normalized form of the provided value.
- Throws:
LDAPException
- If a problem occurs while normalizing the provided value.
-
normalizeSubstring
@NotNull public ASN1OctetString normalizeSubstring(@NotNull ASN1OctetString value, byte substringType) throws LDAPException
Normalizes the provided value for use as part of a substring assertion.- Specified by:
normalizeSubstring
in classMatchingRule
- Parameters:
value
- The value to be normalized for use as part of a substring assertion.substringType
- The substring assertion component type for the provided value. It should be one ofSUBSTRING_TYPE_SUBINITIAL
,SUBSTRING_TYPE_SUBANY
, orSUBSTRING_TYPE_SUBFINAL
.- Returns:
- The normalized form of the provided value.
- Throws:
LDAPException
- If a problem occurs while normalizing the provided value.
-
-