Interface CompareRequest
-
- All Superinterfaces:
ProtocolOp
,Request
public interface CompareRequest extends 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. }
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.forgerock.opendj.ldap.messages.Request
Request.RequestType
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description CompareRequest
addControl(Control control)
Adds the provided control to this protocol-op.CompareRequest
addControls(Iterable<? extends Control> controls)
Adds the provided controls to this protocol-op.ByteString
getAssertionValue()
Returns the assertion value to be compared.String
getAssertionValueAsString()
Returns the assertion value to be compared decoded as a UTF-8 string.AttributeDescription
getAttributeDescription()
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 protocol-op having an OID corresponding to the provided control decoder.List<Control>
getControls()
Returns aList
containing the controls included with this protocol-op.Dn
getName()
Returns the distinguished name of the entry to be compared.CompareRequest
setAssertionValue(Object value)
Sets the assertion value to be compared.CompareRequest
setAttributeDescription(String attributeDescription)
Sets the name of the attribute to be compared.CompareRequest
setAttributeDescription(AttributeDescription attributeDescription)
Sets the name of the attribute to be compared.CompareRequest
setName(String dn)
Sets the distinguished name of the entry to be compared.CompareRequest
setName(Dn dn)
Sets the distinguished name of the entry to be compared.-
Methods inherited from interface org.forgerock.opendj.ldap.messages.ProtocolOp
containsControl, getControl
-
-
-
-
Method Detail
-
addControl
CompareRequest addControl(Control control)
Description copied from interface:ProtocolOp
Adds the provided control to this protocol-op.- Specified by:
addControl
in interfaceProtocolOp
- Specified by:
addControl
in interfaceRequest
- Parameters:
control
- The control to be added to this protocol-op.- Returns:
- This protocol-op.
-
addControls
CompareRequest addControls(Iterable<? extends Control> controls)
Description copied from interface:ProtocolOp
Adds the provided controls to this protocol-op.- Specified by:
addControls
in interfaceProtocolOp
- Specified by:
addControls
in interfaceRequest
- Parameters:
controls
- The controls to be added to this protocol-op.- Returns:
- This protocol-op.
-
getAssertionValue
ByteString getAssertionValue()
Returns the assertion value to be compared.- Returns:
- The assertion value.
-
getAssertionValueAsString
String 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
AttributeDescription 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:ProtocolOp
Decodes and returns the first control in this protocol-op having an OID corresponding to the provided control decoder.- Specified by:
getControl
in interfaceProtocolOp
- 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
null
if the control is not included with this protocol-op. - 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
List<Control> getControls()
Description copied from interface:ProtocolOp
Returns aList
containing the controls included with this protocol-op. The returnedList
may be modified if permitted by this protocol-op.- Specified by:
getControls
in interfaceProtocolOp
- Returns:
- A
List
containing the controls.
-
getName
Dn 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
CompareRequest setAssertionValue(Object value)
Sets the assertion value to be compared.If the assertion value is not an instance of
ByteString
then 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
- Ifvalue
wasnull
.
-
setAttributeDescription
CompareRequest setAttributeDescription(AttributeDescription attributeDescription)
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
- IfattributeDescription
wasnull
.
-
setAttributeDescription
CompareRequest setAttributeDescription(String attributeDescription)
Sets the name of the attribute to be compared.- Parameters:
attributeDescription
- The name of the attribute to be compared.- Returns:
- This compare request.
- Throws:
LocalizedIllegalArgumentException
- IfattributeDescription
could not be decoded using the default schema.UnsupportedOperationException
- If this compare request does not permit the attribute description to be set.NullPointerException
- IfattributeDescription
wasnull
.
-
setName
CompareRequest setName(Dn dn)
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
- Ifdn
wasnull
.
-
setName
CompareRequest setName(String dn)
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:
LocalizedIllegalArgumentException
- Ifdn
could not be decoded using the default schema.UnsupportedOperationException
- If this compare request does not permit the distinguished name to be set.NullPointerException
- Ifdn
wasnull
.
-
-