Class JSONObjectExactMatchingRule

  • All Implemented Interfaces:
    java.io.Serializable

    @ThreadSafety(level=COMPLETELY_THREADSAFE)
    public final class JSONObjectExactMatchingRule
    extends MatchingRule
    This class provides an implementation of a matching rule that can be used in conjunction with JSON objects.
    NOTE: This class, and other classes within the com.unboundid.ldap.sdk.unboundidds package structure, are only supported for use against Ping Identity, UnboundID, and Nokia/Alcatel-Lucent 8661 server products. These classes provide support for proprietary functionality or for external specifications that are not considered stable or mature enough to be guaranteed to work in an interoperable way with other types of LDAP servers.
    See Also:
    Serialized Form
    • Method Detail

      • getEqualityMatchingRuleName

        public java.lang.String getEqualityMatchingRuleName()
        Retrieves the name for this matching rule when used to perform equality matching, if appropriate.
        Specified by:
        getEqualityMatchingRuleName in class MatchingRule
        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

        public java.lang.String getEqualityMatchingRuleOID()
        Retrieves the OID for this matching rule when used to perform equality matching, if appropriate.
        Specified by:
        getEqualityMatchingRuleOID in class MatchingRule
        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

        public java.lang.String getOrderingMatchingRuleName()
        Retrieves the name for this matching rule when used to perform ordering matching, if appropriate.
        Specified by:
        getOrderingMatchingRuleName in class MatchingRule
        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

        public java.lang.String getOrderingMatchingRuleOID()
        Retrieves the OID for this matching rule when used to perform ordering matching, if appropriate.
        Specified by:
        getOrderingMatchingRuleOID in class MatchingRule
        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

        public java.lang.String getSubstringMatchingRuleName()
        Retrieves the name for this matching rule when used to perform substring matching, if appropriate.
        Specified by:
        getSubstringMatchingRuleName in class MatchingRule
        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

        public java.lang.String getSubstringMatchingRuleOID()
        Retrieves the OID for this matching rule when used to perform substring matching, if appropriate.
        Specified by:
        getSubstringMatchingRuleOID in class MatchingRule
        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.
      • valuesMatch

        public boolean valuesMatch​(ASN1OctetString value1,
                                   ASN1OctetString value2)
                            throws LDAPException
        Indicates whether the provided values are equal to each other, according to the constraints of this matching rule.
        Specified by:
        valuesMatch in class MatchingRule
        Parameters:
        value1 - The first value for which to make the determination.
        value2 - The second value for which to make the determination.
        Returns:
        true if the provided values are considered equal, or false if 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​(ASN1OctetString value,
                                        ASN1OctetString subInitial,
                                        ASN1OctetString[] subAny,
                                        ASN1OctetString subFinal)
                                 throws LDAPException
        Indicates whether the provided value matches the given substring assertion, according to the constraints of this matching rule.
        Specified by:
        matchesSubstring in class MatchingRule
        Parameters:
        value - The value for which to make the determination.
        subInitial - The subInitial portion of the substring assertion, or null if there is no subInitial element.
        subAny - The subAny elements of the substring assertion, or null if there are no subAny elements.
        subFinal - The subFinal portion of the substring assertion, or null if there is no subFinal element.
        Returns:
        true if the provided value matches the substring assertion, or false if 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​(ASN1OctetString value1,
                                 ASN1OctetString value2)
                          throws LDAPException
        Compares the provided values to determine their relative order in a sorted list.
        Specified by:
        compareValues in class MatchingRule
        Parameters:
        value1 - The first value to compare.
        value2 - The second value to compare.
        Returns:
        A negative value if value1 should come before value2 in a sorted list, a positive value if value1 should come after value2 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.
      • normalizeSubstring

        public ASN1OctetString normalizeSubstring​(ASN1OctetString value,
                                                  byte substringType)
                                           throws LDAPException
        Normalizes the provided value for use as part of a substring assertion.
        Specified by:
        normalizeSubstring in class MatchingRule
        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 of SUBSTRING_TYPE_SUBINITIAL, SUBSTRING_TYPE_SUBANY, or SUBSTRING_TYPE_SUBFINAL.
        Returns:
        The normalized form of the provided value.
        Throws:
        LDAPException - If a problem occurs while normalizing the provided value.