Class AbstractOrderingMatchingRuleImpl

  • All Implemented Interfaces:
    MatchingRuleImpl

    public abstract class AbstractOrderingMatchingRuleImpl
    extends Object
    This class implements a default ordering matching rule that matches normalized values in byte order.

    The getXXXAssertion() methods are default implementations which assume that the assertion syntax is the same as the attribute syntax. Override them if this assumption does not hold true.

    • Constructor Detail

      • AbstractOrderingMatchingRuleImpl

        protected AbstractOrderingMatchingRuleImpl​(String indexId)
        Creates an instance of the ordering matching rule.
        Parameters:
        indexId - the identifier of the DB index
    • Method Detail

      • getAssertion

        public final Assertion getAssertion​(Schema schema,
                                            ByteSequence value)
                                     throws DecodeException
        Description copied from interface: MatchingRuleImpl
        Retrieves the normalized form of the provided assertion value, which is best suited for efficiently performing less than matching operations on that value. The assertion value is guaranteed to be valid against this matching rule's assertion syntax.
        Specified by:
        getAssertion in interface MatchingRuleImpl
        Parameters:
        schema - The schema in which this matching rule is defined.
        value - The syntax checked assertion value to be normalized.
        Returns:
        The normalized version of the provided assertion value.
        Throws:
        DecodeException - if an syntax error occurred while parsing the value.
      • getGreaterOrEqualAssertion

        public final Assertion getGreaterOrEqualAssertion​(Schema schema,
                                                          ByteSequence value)
                                                   throws DecodeException
        Description copied from interface: MatchingRuleImpl
        Retrieves the normalized form of the provided assertion value, which is best suited for efficiently performing greater than or equal matching operations on that value. The assertion value is guaranteed to be valid against this matching rule's assertion syntax.
        Specified by:
        getGreaterOrEqualAssertion in interface MatchingRuleImpl
        Parameters:
        schema - The schema in which this matching rule is defined.
        value - The syntax checked assertion value to be normalized.
        Returns:
        The normalized version of the provided assertion value.
        Throws:
        DecodeException - if an syntax error occurred while parsing the value.
      • getLessOrEqualAssertion

        public final Assertion getLessOrEqualAssertion​(Schema schema,
                                                       ByteSequence value)
                                                throws DecodeException
        Description copied from interface: MatchingRuleImpl
        Retrieves the normalized form of the provided assertion value, which is best suited for efficiently performing less than or equal matching operations on that value. The assertion value is guaranteed to be valid against this matching rule's assertion syntax.
        Specified by:
        getLessOrEqualAssertion in interface MatchingRuleImpl
        Parameters:
        schema - The schema in which this matching rule is defined.
        value - The syntax checked assertion value to be normalized.
        Returns:
        The normalized version of the provided assertion value.
        Throws:
        DecodeException - if an syntax error occurred while parsing the value.
      • createIndexers

        public final Collection<? extends Indexer> createIndexers​(IndexingOptions options)
        Description copied from interface: MatchingRuleImpl
        Returns the indexers for this matching rule.
        Parameters:
        options - The indexing options
        Returns:
        a non null collection of indexers for this matching rule.
      • getSubstringAssertion

        public Assertion getSubstringAssertion​(Schema schema,
                                               ByteSequence subInitial,
                                               List<? extends ByteSequence> subAnyElements,
                                               ByteSequence subFinal)
                                        throws DecodeException
        Description copied from interface: MatchingRuleImpl
        Retrieves the normalized form of the provided assertion substring values, which is best suited for efficiently performing matching operations on that value.
        Specified by:
        getSubstringAssertion in interface MatchingRuleImpl
        Parameters:
        schema - The schema in which this matching rule is defined.
        subInitial - The normalized substring value fragment that should appear at the beginning of the target value.
        subAnyElements - The normalized substring value fragments that should appear in the middle of the target value.
        subFinal - The normalized substring value fragment that should appear at the end of the target value.
        Returns:
        The normalized version of the provided assertion value.
        Throws:
        DecodeException - if an syntax error occurred while parsing the value.