Package com.unboundid.ldap.matchingrules
Class GeneralizedTimeMatchingRule
- java.lang.Object
-
- com.unboundid.ldap.matchingrules.MatchingRule
-
- com.unboundid.ldap.matchingrules.GeneralizedTimeMatchingRule
-
- All Implemented Interfaces:
java.io.Serializable
@ThreadSafety(level=COMPLETELY_THREADSAFE) public final class GeneralizedTimeMatchingRule extends MatchingRule
This class provides an implementation of a matching rule that performs equality and ordering comparisons against values that should be timestamps in the generalized time syntax. Substring matching is not supported.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringEQUALITY_RULE_NAMEThe name for the generalizedTimeMatch equality matching rule.static java.lang.StringEQUALITY_RULE_OIDThe OID for the generalizedTimeMatch equality matching rule.static java.lang.StringORDERING_RULE_NAMEThe name for the generalizedTimeOrderingMatch ordering matching rule.static java.lang.StringORDERING_RULE_OIDThe OID for the generalizedTimeOrderingMatch ordering 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 GeneralizedTimeMatchingRule()Creates a new instance of this generalized time matching rule.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description intcompareValues(ASN1OctetString value1, ASN1OctetString value2)Compares the provided values to determine their relative order in a sorted list.java.lang.StringgetEqualityMatchingRuleName()Retrieves the name for this matching rule when used to perform equality matching, if appropriate.java.lang.StringgetEqualityMatchingRuleOID()Retrieves the OID for this matching rule when used to perform equality matching, if appropriate.static GeneralizedTimeMatchingRulegetInstance()Retrieves a singleton instance of this matching rule.java.lang.StringgetOrderingMatchingRuleName()Retrieves the name for this matching rule when used to perform ordering matching, if appropriate.java.lang.StringgetOrderingMatchingRuleOID()Retrieves the OID for this matching rule when used to perform ordering matching, if appropriate.java.lang.StringgetSubstringMatchingRuleName()Retrieves the name for this matching rule when used to perform substring matching, if appropriate.java.lang.StringgetSubstringMatchingRuleOID()Retrieves the OID for this matching rule when used to perform substring matching, if appropriate.booleanmatchesAnyValue(ASN1OctetString assertionValue, ASN1OctetString[] attributeValues)Indicates whether the provided assertion value matches any of the provided attribute values.booleanmatchesSubstring(ASN1OctetString value, ASN1OctetString subInitial, ASN1OctetString[] subAny, ASN1OctetString subFinal)Indicates whether the provided value matches the given substring assertion, according to the constraints of this matching rule.ASN1OctetStringnormalize(ASN1OctetString value)Normalizes the provided value for easier matching.ASN1OctetStringnormalizeSubstring(ASN1OctetString value, byte substringType)Normalizes the provided value for use as part of a substring assertion.booleanvaluesMatch(ASN1OctetString value1, ASN1OctetString value2)Indicates whether the provided values are equal to each other, according to the constraints of this matching rule.-
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
-
EQUALITY_RULE_NAME
@NotNull public static final java.lang.String EQUALITY_RULE_NAME
The name for the generalizedTimeMatch 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 generalizedTimeMatch equality matching rule.- See Also:
- Constant Field Values
-
ORDERING_RULE_NAME
@NotNull public static final java.lang.String ORDERING_RULE_NAME
The name for the generalizedTimeOrderingMatch ordering matching rule.- See Also:
- Constant Field Values
-
ORDERING_RULE_OID
@NotNull public static final java.lang.String ORDERING_RULE_OID
The OID for the generalizedTimeOrderingMatch ordering matching rule.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
GeneralizedTimeMatchingRule
public GeneralizedTimeMatchingRule()
Creates a new instance of this generalized time matching rule.
-
-
Method Detail
-
getInstance
@NotNull public static GeneralizedTimeMatchingRule getInstance()
Retrieves a singleton instance of this matching rule.- Returns:
- A singleton instance of this matching rule.
-
getEqualityMatchingRuleName
@NotNull public java.lang.String getEqualityMatchingRuleName()
Retrieves the name for this matching rule when used to perform equality matching, if appropriate.- Specified by:
getEqualityMatchingRuleNamein classMatchingRule- Returns:
- The name for this matching rule when used to perform equality
matching, or
nullif 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:
getEqualityMatchingRuleOIDin classMatchingRule- Returns:
- The OID for this matching rule when used to perform equality
matching, or
nullif this matching rule is not intended to be used for equality matching.
-
getOrderingMatchingRuleName
@NotNull public java.lang.String getOrderingMatchingRuleName()
Retrieves the name for this matching rule when used to perform ordering matching, if appropriate.- Specified by:
getOrderingMatchingRuleNamein classMatchingRule- Returns:
- The name for this matching rule when used to perform ordering
matching, or
nullif this matching rule is not intended to be used for ordering matching.
-
getOrderingMatchingRuleOID
@NotNull public java.lang.String getOrderingMatchingRuleOID()
Retrieves the OID for this matching rule when used to perform ordering matching, if appropriate.- Specified by:
getOrderingMatchingRuleOIDin classMatchingRule- Returns:
- The OID for this matching rule when used to perform ordering
matching, or
nullif this matching rule is not intended to be used for ordering matching.
-
getSubstringMatchingRuleName
@Nullable public java.lang.String getSubstringMatchingRuleName()
Retrieves the name for this matching rule when used to perform substring matching, if appropriate.- Specified by:
getSubstringMatchingRuleNamein classMatchingRule- Returns:
- The name for this matching rule when used to perform substring
matching, or
nullif this matching rule is not intended to be used for substring matching.
-
getSubstringMatchingRuleOID
@Nullable public java.lang.String getSubstringMatchingRuleOID()
Retrieves the OID for this matching rule when used to perform substring matching, if appropriate.- Specified by:
getSubstringMatchingRuleOIDin classMatchingRule- Returns:
- The OID for this matching rule when used to perform substring
matching, or
nullif this matching rule is not intended to be used for substring matching.
-
valuesMatch
public boolean valuesMatch(@NotNull ASN1OctetString value1, @NotNull ASN1OctetString value2) throws LDAPException
Indicates whether the provided values are equal to each other, according to the constraints of this matching rule.- Specified by:
valuesMatchin classMatchingRule- Parameters:
value1- The first value for which to make the determination.value2- The second value for which to make the determination.- Returns:
trueif the provided values are considered equal, orfalseif not.- Throws:
LDAPException- If a problem occurs while making the determination, or if this matching rule does not support equality matching.
-
matchesAnyValue
public boolean matchesAnyValue(@NotNull ASN1OctetString assertionValue, @NotNull ASN1OctetString[] attributeValues) throws LDAPException
Indicates whether the provided assertion value matches any of the provided attribute values.- Overrides:
matchesAnyValuein classMatchingRule- Parameters:
assertionValue- The assertion value for which to make the determination.attributeValues- The set of attribute values to compare against the provided assertion value.- Returns:
trueif the provided assertion value matches any of the given attribute values, orfalseif not.- Throws:
LDAPException- If a problem occurs while making the determination, or if this matching rule does not support equality matching.
-
matchesSubstring
public boolean matchesSubstring(@NotNull ASN1OctetString value, @Nullable ASN1OctetString subInitial, @Nullable ASN1OctetString[] subAny, @Nullable ASN1OctetString subFinal) throws LDAPException
Indicates whether the provided value matches the given substring assertion, according to the constraints of this matching rule.- Specified by:
matchesSubstringin classMatchingRule- Parameters:
value- The value for which to make the determination.subInitial- The subInitial portion of the substring assertion, ornullif there is no subInitial element.subAny- The subAny elements of the substring assertion, ornullif there are no subAny elements.subFinal- The subFinal portion of the substring assertion, ornullif there is no subFinal element.- Returns:
trueif the provided value matches the substring assertion, orfalseif not.- Throws:
LDAPException- If a problem occurs while making the determination, or if this matching rule does not support 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.- Specified by:
compareValuesin classMatchingRule- Parameters:
value1- The first value to compare.value2- The second value to compare.- Returns:
- A negative value if
value1should come beforevalue2in a sorted list, a positive value ifvalue1should come aftervalue2in 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:
normalizein 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:
normalizeSubstringin 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.
-
-