public final class HistoricalCsnRangeMatchingRuleImpl extends Object implements MatchingRuleImpl
It uses the same index as HistoricalCsnOrderingMatchingRuleImpl
, but emulates a range search on
a multivalued attribute. We can do that because the index is ordered by replica id and we're interested on
a range search for a single replica only.
Constructor and Description |
---|
HistoricalCsnRangeMatchingRuleImpl() |
Modifier and Type | Method and Description |
---|---|
Collection<? extends Indexer> |
createIndexers(IndexingOptions options)
Returns the indexers for this matching rule.
|
Assertion |
getAssertion(Schema schema,
ByteSequence assertionValue)
Retrieves the normalized form of the provided assertion value, which is
best suited for efficiently performing less than matching operations on
that value.
|
Assertion |
getGreaterOrEqualAssertion(Schema schema,
ByteSequence value)
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.
|
Assertion |
getLessOrEqualAssertion(Schema schema,
ByteSequence value)
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.
|
Assertion |
getSubstringAssertion(Schema schema,
ByteSequence subInitial,
List<? extends ByteSequence> subAnyElements,
ByteSequence subFinal)
Retrieves the normalized form of the provided assertion substring values,
which is best suited for efficiently performing matching operations on
that value.
|
ByteString |
normalizeAttributeValue(Schema schema,
ByteSequence value)
Retrieves the normalized form of the provided attribute value, which is
best suited for efficiently performing matching operations on that value.
|
public Assertion getAssertion(Schema schema, ByteSequence assertionValue) throws DecodeException
MatchingRuleImpl
getAssertion
in interface MatchingRuleImpl
schema
- The schema in which this matching rule is defined.assertionValue
- The syntax checked assertion value to be normalized.DecodeException
- if an syntax error occurred while parsing the value.public Assertion getSubstringAssertion(Schema schema, ByteSequence subInitial, List<? extends ByteSequence> subAnyElements, ByteSequence subFinal)
MatchingRuleImpl
getSubstringAssertion
in interface MatchingRuleImpl
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.public Assertion getGreaterOrEqualAssertion(Schema schema, ByteSequence value)
MatchingRuleImpl
getGreaterOrEqualAssertion
in interface MatchingRuleImpl
schema
- The schema in which this matching rule is defined.value
- The syntax checked assertion value to be normalized.public Assertion getLessOrEqualAssertion(Schema schema, ByteSequence value)
MatchingRuleImpl
getLessOrEqualAssertion
in interface MatchingRuleImpl
schema
- The schema in which this matching rule is defined.value
- The syntax checked assertion value to be normalized.public ByteString normalizeAttributeValue(Schema schema, ByteSequence value) throws DecodeException
MatchingRuleImpl
ByteSequence.equals(Object)
and
ByteSequence.compareTo(ByteSequence)
.normalizeAttributeValue
in interface MatchingRuleImpl
schema
- The schema in which this matching rule is defined.value
- The attribute value to be normalized.DecodeException
- If an syntax error occurred while parsing the value.public Collection<? extends Indexer> createIndexers(IndexingOptions options)
MatchingRuleImpl
createIndexers
in interface MatchingRuleImpl
options
- The indexing optionsCopyright 2010-2022 ForgeRock AS.