com.unboundid.ldap.matchingrules
Class AcceptAllSimpleMatchingRule

java.lang.Object
  extended by com.unboundid.ldap.matchingrules.MatchingRule
      extended by com.unboundid.ldap.matchingrules.SimpleMatchingRule
          extended by com.unboundid.ldap.matchingrules.AcceptAllSimpleMatchingRule
All Implemented Interfaces:
java.io.Serializable
Direct Known Subclasses:
CaseExactStringMatchingRule, CaseIgnoreStringMatchingRule, OctetStringMatchingRule

@Extensible
@ThreadSafety(level=INTERFACE_THREADSAFE)
public abstract class AcceptAllSimpleMatchingRule
extends SimpleMatchingRule

This class provides a common matching rule framework that may be extended by matching rule implementations in which equality, ordering, and substring matching can all be made based on byte-for-byte comparisons of the normalized value, and any value is acceptable.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.unboundid.ldap.matchingrules.MatchingRule
SUBSTRING_TYPE_SUBANY, SUBSTRING_TYPE_SUBFINAL, SUBSTRING_TYPE_SUBINITIAL
 
Constructor Summary
AcceptAllSimpleMatchingRule()
           
 
Method Summary
 int compareValues(ASN1OctetString value1, ASN1OctetString value2)
          Compares the provided values to determine their relative order in a sorted list.
 boolean matchesSubstring(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.
abstract  ASN1OctetString normalize(ASN1OctetString value)
          Normalizes the provided value for easier matching.
abstract  ASN1OctetString normalizeSubstring(ASN1OctetString value, byte substringType)
          Normalizes the provided value for use as part of a substring assertion.
 boolean valuesMatch(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, getEqualityMatchingRuleName, getEqualityMatchingRuleNameOrOID, getEqualityMatchingRuleOID, getOrderingMatchingRuleName, getOrderingMatchingRuleNameOrOID, getOrderingMatchingRuleOID, getSubstringMatchingRuleName, getSubstringMatchingRuleNameOrOID, getSubstringMatchingRuleOID, selectEqualityMatchingRule, selectEqualityMatchingRule, selectEqualityMatchingRule, selectMatchingRuleForSyntax, selectOrderingMatchingRule, selectOrderingMatchingRule, selectOrderingMatchingRule, selectSubstringMatchingRule, selectSubstringMatchingRule, selectSubstringMatchingRule
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AcceptAllSimpleMatchingRule

public AcceptAllSimpleMatchingRule()
Method Detail

valuesMatch

public boolean valuesMatch(ASN1OctetString value1,
                           ASN1OctetString value2)
Indicates whether the provided values are equal to each other, according to the constraints of this matching rule.

Overrides:
valuesMatch in class SimpleMatchingRule
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.

matchesSubstring

public boolean matchesSubstring(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.

Overrides:
matchesSubstring in class SimpleMatchingRule
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.

compareValues

public int compareValues(ASN1OctetString value1,
                         ASN1OctetString value2)
Compares the provided values to determine their relative order in a sorted list.

Overrides:
compareValues in class SimpleMatchingRule
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.

normalize

public abstract ASN1OctetString normalize(ASN1OctetString value)
Normalizes the provided value for easier matching. This variant of the normalize method is not allowed to throw exceptions.

Specified by:
normalize in class MatchingRule
Parameters:
value - The value to be normalized.
Returns:
The normalized form of the provided value.

normalizeSubstring

public abstract ASN1OctetString normalizeSubstring(ASN1OctetString value,
                                                   byte substringType)
Normalizes the provided value for use as part of a substring assertion. This variant of the normalizeSubstring method is not allowed to throw exceptions.

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.