Package org.ldaptive.control
Class MatchedValuesRequestControl
java.lang.Object
org.ldaptive.control.AbstractControl
org.ldaptive.control.MatchedValuesRequestControl
- All Implemented Interfaces:
Control,RequestControl
Request control for limiting the attribute values returned by a search request.
See https://tools.ietf.org/html/rfc3876. Control is defined as:
ValuesReturnFilter ::= SEQUENCE OF SimpleFilterItem
SimpleFilterItem ::= CHOICE {
equalityMatch [3] AttributeValueAssertion,
substrings [4] SubstringFilter,
greaterOrEqual [5] AttributeValueAssertion,
lessOrEqual [6] AttributeValueAssertion,
present [7] AttributeDescription,
approxMatch [8] AttributeValueAssertion,
extensibleMatch [9] SimpleMatchingAssertion }
SimpleMatchingAssertion ::= SEQUENCE {
matchingRule [1] MatchingRuleId OPTIONAL,
type [2] AttributeDescription OPTIONAL,
--- at least one of the above must be present
matchValue [3] AssertionValue}
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final inthash code seed.private Filter[]list of matched values filters.static final StringOID of this control.Fields inherited from class org.ldaptive.control.AbstractControl
logger -
Constructor Summary
ConstructorsConstructorDescriptionDefault constructor.MatchedValuesRequestControl(String... filters) Creates a new matched values request control.MatchedValuesRequestControl(String[] filters, boolean critical) Creates a new matched values request control.MatchedValuesRequestControl(Filter... filters) Creates a new matched values request control.MatchedValuesRequestControl(Filter[] filters, boolean critical) Creates a new matched values request control. -
Method Summary
Modifier and TypeMethodDescriptionbyte[]encode()Provides the BER encoding of this control.booleanFilter[]Returns the filters to use for matching values.inthashCode()Returns the hash code for this object.booleanhasValue()Returns whether the control has a value associated with it.voidsetMatchedValuesFilters(String... filters) Sets the filters to use for matching values.voidsetMatchedValuesFilters(Filter... filters) Sets the filters to use for matching values.toString()private voidvalidateFilter(Filter filter) Throws if the supplied filter is not a valid type for the matched values request control.Methods inherited from class org.ldaptive.control.AbstractControl
getCriticality, getOIDMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.ldaptive.control.Control
getCriticality, getOID
-
Field Details
-
OID
OID of this control.- See Also:
-
HASH_CODE_SEED
private static final int HASH_CODE_SEEDhash code seed.- See Also:
-
matchedValuesFilters
list of matched values filters.
-
-
Constructor Details
-
MatchedValuesRequestControl
public MatchedValuesRequestControl()Default constructor. -
MatchedValuesRequestControl
Creates a new matched values request control.- Parameters:
filters- to use for value matching
-
MatchedValuesRequestControl
Creates a new matched values request control.- Parameters:
filters- to use for value matchingcritical- whether this control is critical
-
MatchedValuesRequestControl
Creates a new matched values request control.- Parameters:
filters- to use for value matching
-
MatchedValuesRequestControl
Creates a new matched values request control.- Parameters:
filters- to use for value matchingcritical- whether this control is critical
-
-
Method Details
-
hasValue
public boolean hasValue()Description copied from interface:RequestControlReturns whether the control has a value associated with it.- Specified by:
hasValuein interfaceRequestControl- Returns:
- whether the control has a value
-
getMatchedValuesFilters
Returns the filters to use for matching values.- Returns:
- matched values filters
-
setMatchedValuesFilters
Sets the filters to use for matching values.- Parameters:
filters- for matching values- Throws:
IllegalArgumentException- if the filter cannot be parsed or is not allowed
-
setMatchedValuesFilters
Sets the filters to use for matching values.- Parameters:
filters- for matching values- Throws:
IllegalArgumentException- if the filter is not allowed
-
validateFilter
Throws if the supplied filter is not a valid type for the matched values request control.- Parameters:
filter- to validate- Throws:
IllegalArgumentException- if the filter is null or not a valid type
-
equals
- Overrides:
equalsin classAbstractControl
-
hashCode
public int hashCode()Description copied from class:AbstractControlReturns the hash code for this object.- Specified by:
hashCodein classAbstractControl- Returns:
- hash code
-
toString
- Overrides:
toStringin classAbstractControl
-
encode
public byte[] encode()Description copied from interface:RequestControlProvides the BER encoding of this control.- Specified by:
encodein interfaceRequestControl- Returns:
- BER encoded request control
-