Interface CompareRequest
- All Superinterfaces:
Request
The Compare operation allows a client to compare an assertion value with the
values of a particular attribute in a particular entry in the Directory.
Note that some directory systems may establish access controls that permit
the values of certain attributes (such as userPassword ) to be
compared but not interrogated by other means.
The following excerpt shows how to use the Compare operation to check whether a member belongs to a (possibly large) static group.
Connection connection = ...;
String groupDN = ...;
String memberDN = ...;
CompareRequest request =
Requests.newCompareRequest(groupDN, "member", memberDN);
CompareResult result = connection.compare(request);
if (result.matched()) {
// The member belongs to the group.
}
-
Method Summary
Modifier and TypeMethodDescriptionaddControl(Control control) Adds the provided control to this request.Returns the assertion value to be compared.Returns the assertion value to be compared decoded as a UTF-8 string.Returns the name of the attribute to be compared.<C extends Control>
CgetControl(ControlDecoder<C> decoder, DecodeOptions options) Decodes and returns the first control in this request having an OID corresponding to the provided control decoder.Returns aListcontaining the controls included with this request.getName()Returns the distinguished name of the entry to be compared.setAssertionValue(Object value) Sets the assertion value to be compared.setAttributeDescription(String attributeDescription) Sets the name of the attribute to be compared.setAttributeDescription(AttributeDescription attributeDescription) Sets the name of the attribute to be compared.Sets the distinguished name of the entry to be compared.Sets the distinguished name of the entry to be compared.Methods inherited from interface org.forgerock.opendj.ldap.requests.Request
containsControl
-
Method Details
-
addControl
Description copied from interface:RequestAdds the provided control to this request.- Specified by:
addControlin interfaceRequest- Parameters:
control- The control to be added to this request.- Returns:
- This request.
-
getAssertionValue
Returns the assertion value to be compared.- Returns:
- The assertion value.
-
getAssertionValueAsString
Returns the assertion value to be compared decoded as a UTF-8 string.- Returns:
- The assertion value decoded as a UTF-8 string.
-
getAttributeDescription
Returns the name of the attribute to be compared.- Returns:
- The name of the attribute.
-
getControl
<C extends Control> C getControl(ControlDecoder<C> decoder, DecodeOptions options) throws DecodeException Description copied from interface:RequestDecodes and returns the first control in this request having an OID corresponding to the provided control decoder.- Specified by:
getControlin interfaceRequest- Type Parameters:
C- The type of control to be decoded and returned.- Parameters:
decoder- The control decoder.options- The set of decode options which should be used when decoding the control.- Returns:
- The decoded control, or
nullif the control is not included with this request. - Throws:
DecodeException- If the control could not be decoded because it was malformed in some way (e.g. the control value was missing, or its content could not be decoded).
-
getControls
Description copied from interface:RequestReturns aListcontaining the controls included with this request. The returnedListmay be modified if permitted by this request.- Specified by:
getControlsin interfaceRequest- Returns:
- A
Listcontaining the controls.
-
getName
Returns the distinguished name of the entry to be compared. The server shall not dereference any aliases in locating the entry to be compared.- Returns:
- The distinguished name of the entry.
-
setAssertionValue
Sets the assertion value to be compared.If the assertion value is not an instance of
ByteStringthen it will be converted using theByteString.valueOfObject(Object)method.- Parameters:
value- The assertion value to be compared.- Returns:
- This compare request.
- Throws:
UnsupportedOperationException- If this compare request does not permit the assertion value to be set.NullPointerException- Ifvaluewasnull.
-
setAttributeDescription
Sets the name of the attribute to be compared.- Parameters:
attributeDescription- The name of the attribute to be compared.- Returns:
- This compare request.
- Throws:
UnsupportedOperationException- If this compare request does not permit the attribute description to be set.NullPointerException- IfattributeDescriptionwasnull.
-
setAttributeDescription
Sets the name of the attribute to be compared.- Parameters:
attributeDescription- The name of the attribute to be compared.- Returns:
- This compare request.
- Throws:
org.forgerock.i18n.LocalizedIllegalArgumentException- IfattributeDescriptioncould not be decoded using the default schema.UnsupportedOperationException- If this compare request does not permit the attribute description to be set.NullPointerException- IfattributeDescriptionwasnull.
-
setName
Sets the distinguished name of the entry to be compared. The server shall not dereference any aliases in locating the entry to be compared.- Parameters:
dn- The distinguished name of the entry to be compared.- Returns:
- This compare request.
- Throws:
UnsupportedOperationException- If this compare request does not permit the distinguished name to be set.NullPointerException- Ifdnwasnull.
-
setName
Sets the distinguished name of the entry to be compared. The server shall not dereference any aliases in locating the entry to be compared.- Parameters:
dn- The distinguished name of the entry to be compared.- Returns:
- This compare request.
- Throws:
org.forgerock.i18n.LocalizedIllegalArgumentException- Ifdncould not be decoded using the default schema.UnsupportedOperationException- If this compare request does not permit the distinguished name to be set.NullPointerException- Ifdnwasnull.
-