@Mutable @ThreadSafety(level=NOT_THREADSAFE) public final class CompareRequest extends UpdatableLDAPRequest implements ReadOnlyCompareRequest, ProtocolOp
CompareRequest objects are mutable and therefore can be altered and
re-used for multiple requests. Note, however, that CompareRequest
objects are not threadsafe and therefore a single CompareRequest
object instance should not be used to process multiple requests at the same
time.
CompareRequest compareRequest =
new CompareRequest("dc=example,dc=com", "description", "test");
CompareResult compareResult;
try
{
compareResult = connection.compare(compareRequest);
// The compare operation didn't throw an exception, so we can try to
// determine whether the compare matched.
if (compareResult.compareMatched())
{
// The entry does have a description value of test.
}
else
{
// The entry does not have a description value of test.
}
}
catch (LDAPException le)
{
// The compare operation failed.
compareResult = new CompareResult(le.toLDAPResult());
ResultCode resultCode = le.getResultCode();
String errorMessageFromServer = le.getDiagnosticMessage();
}
| Constructor and Description |
|---|
CompareRequest(DN dn,
java.lang.String attributeName,
ASN1OctetString assertionValue,
Control[] controls)
Creates a new compare request with the provided information.
|
CompareRequest(DN dn,
java.lang.String attributeName,
byte[] assertionValue)
Creates a new compare request with the provided information.
|
CompareRequest(DN dn,
java.lang.String attributeName,
byte[] assertionValue,
Control[] controls)
Creates a new compare request with the provided information.
|
CompareRequest(DN dn,
java.lang.String attributeName,
java.lang.String assertionValue)
Creates a new compare request with the provided information.
|
CompareRequest(DN dn,
java.lang.String attributeName,
java.lang.String assertionValue,
Control[] controls)
Creates a new compare request with the provided information.
|
CompareRequest(java.lang.String dn,
java.lang.String attributeName,
byte[] assertionValue)
Creates a new compare request with the provided information.
|
CompareRequest(java.lang.String dn,
java.lang.String attributeName,
byte[] assertionValue,
Control[] controls)
Creates a new compare request with the provided information.
|
CompareRequest(java.lang.String dn,
java.lang.String attributeName,
java.lang.String assertionValue)
Creates a new compare request with the provided information.
|
CompareRequest(java.lang.String dn,
java.lang.String attributeName,
java.lang.String assertionValue,
Control[] controls)
Creates a new compare request with the provided information.
|
| Modifier and Type | Method and Description |
|---|---|
CompareRequest |
duplicate()
Creates a new instance of this LDAP request that may be modified without
impacting this request.
|
CompareRequest |
duplicate(Control[] controls)
Creates a new instance of this LDAP request that may be modified without
impacting this request.
|
ASN1Element |
encodeProtocolOp()
Encodes the compare request protocol op to an ASN.1 element.
|
java.lang.String |
getAssertionValue()
Retrieves the assertion value to verify within the target entry.
|
byte[] |
getAssertionValueBytes()
Retrieves the assertion value to verify within the target entry, formatted
as a byte array.
|
java.lang.String |
getAttributeName()
Retrieves the name of the attribute for which the comparison is to be
performed.
|
java.lang.String |
getDN()
Retrieves the DN of the entry in which the comparison is to be performed.
|
int |
getLastMessageID()
Retrieves the message ID for the last LDAP message sent using this request.
|
OperationType |
getOperationType()
Retrieves the type of operation that is represented by this request.
|
byte |
getProtocolOpType()
Retrieves the BER type for this protocol op.
|
ASN1OctetString |
getRawAssertionValue()
Retrieves the assertion value to verify within the target entry.
|
protected CompareResult |
process(LDAPConnection connection,
int depth)
Sends this delete request to the directory server over the provided
connection and returns the associated response.
|
void |
responseReceived(LDAPResponse response)
Indicates that the provided LDAP response has been received by from the
server.
|
void |
setAssertionValue(ASN1OctetString assertionValue)
Specifies the assertion value to specify within the target entry.
|
void |
setAssertionValue(byte[] assertionValue)
Specifies the assertion value to specify within the target entry.
|
void |
setAssertionValue(java.lang.String assertionValue)
Specifies the assertion value to specify within the target entry.
|
void |
setAttributeName(java.lang.String attributeName)
Specifies the name of the attribute for which the comparison is to be
performed.
|
void |
setDN(DN dn)
Specifies the DN of the entry in which the comparison is to be performed.
|
void |
setDN(java.lang.String dn)
Specifies the DN of the entry in which the comparison is to be performed.
|
void |
toCode(java.util.List<java.lang.String> lineList,
java.lang.String requestID,
int indentSpaces,
boolean includeProcessing)
Appends a number of lines comprising the Java source code that can be used
to recreate this request to the given list.
|
void |
toString(java.lang.StringBuilder buffer)
Appends a string representation of this request to the provided buffer.
|
void |
writeTo(ASN1Buffer buffer)
Writes an ASN.1-encoded representation of this LDAP protocol op to the
provided ASN.1 buffer.
|
addControl, addControls, clearControls, removeControl, removeControl, replaceControl, replaceControl, setControls, setControlsfollowReferrals, getControl, getControlList, getControls, getIntermediateResponseListener, getReferralConnector, getReferralConnectorInternal, getReferralDepth, getResponseTimeoutMillis, hasControl, hasControl, setFollowReferrals, setIntermediateResponseListener, setReferralConnector, setReferralDepth, setResponseTimeoutMillis, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitfollowReferrals, getControl, getControlList, getControls, getReferralConnector, getResponseTimeoutMillis, hasControl, hasControl, toStringpublic CompareRequest(@NotNull java.lang.String dn, @NotNull java.lang.String attributeName, @NotNull java.lang.String assertionValue)
dn - The DN of the entry in which the comparison is to
be performed. It must not be null.attributeName - The name of the target attribute for which the
comparison is to be performed. It must not be
null.assertionValue - The assertion value to verify within the entry. It
must not be null.public CompareRequest(@NotNull java.lang.String dn, @NotNull java.lang.String attributeName, @NotNull byte[] assertionValue)
dn - The DN of the entry in which the comparison is to
be performed. It must not be null.attributeName - The name of the target attribute for which the
comparison is to be performed. It must not be
null.assertionValue - The assertion value to verify within the entry. It
must not be null.public CompareRequest(@NotNull DN dn, @NotNull java.lang.String attributeName, @NotNull java.lang.String assertionValue)
dn - The DN of the entry in which the comparison is to
be performed. It must not be null.attributeName - The name of the target attribute for which the
comparison is to be performed. It must not be
null.assertionValue - The assertion value to verify within the entry. It
must not be null.public CompareRequest(@NotNull DN dn, @NotNull java.lang.String attributeName, @NotNull byte[] assertionValue)
dn - The DN of the entry in which the comparison is to
be performed. It must not be null.attributeName - The name of the target attribute for which the
comparison is to be performed. It must not be
null.assertionValue - The assertion value to verify within the entry. It
must not be null.public CompareRequest(@NotNull java.lang.String dn, @NotNull java.lang.String attributeName, @NotNull java.lang.String assertionValue, @Nullable Control[] controls)
dn - The DN of the entry in which the comparison is to
be performed. It must not be null.attributeName - The name of the target attribute for which the
comparison is to be performed. It must not be
null.assertionValue - The assertion value to verify within the entry. It
must not be null.controls - The set of controls for this compare request.public CompareRequest(@NotNull java.lang.String dn, @NotNull java.lang.String attributeName, @NotNull byte[] assertionValue, @Nullable Control[] controls)
dn - The DN of the entry in which the comparison is to
be performed. It must not be null.attributeName - The name of the target attribute for which the
comparison is to be performed. It must not be
null.assertionValue - The assertion value to verify within the entry. It
must not be null.controls - The set of controls for this compare request.public CompareRequest(@NotNull DN dn, @NotNull java.lang.String attributeName, @NotNull java.lang.String assertionValue, @Nullable Control[] controls)
dn - The DN of the entry in which the comparison is to
be performed. It must not be null.attributeName - The name of the target attribute for which the
comparison is to be performed. It must not be
null.assertionValue - The assertion value to verify within the entry. It
must not be null.controls - The set of controls for this compare request.public CompareRequest(@NotNull DN dn, @NotNull java.lang.String attributeName, @NotNull ASN1OctetString assertionValue, @Nullable Control[] controls)
dn - The DN of the entry in which the comparison is to
be performed. It must not be null.attributeName - The name of the target attribute for which the
comparison is to be performed. It must not be
null.assertionValue - The assertion value to verify within the entry. It
must not be null.controls - The set of controls for this compare request.public CompareRequest(@NotNull DN dn, @NotNull java.lang.String attributeName, @NotNull byte[] assertionValue, @Nullable Control[] controls)
dn - The DN of the entry in which the comparison is to
be performed. It must not be null.attributeName - The name of the target attribute for which the
comparison is to be performed. It must not be
null.assertionValue - The assertion value to verify within the entry. It
must not be null.controls - The set of controls for this compare request.@NotNull public java.lang.String getDN()
getDN in interface ReadOnlyCompareRequestpublic void setDN(@NotNull java.lang.String dn)
dn - The DN of the entry in which the comparison is to be performed.
It must not be null.public void setDN(@NotNull DN dn)
dn - The DN of the entry in which the comparison is to be performed.
It must not be null.@NotNull public java.lang.String getAttributeName()
getAttributeName in interface ReadOnlyCompareRequestpublic void setAttributeName(@NotNull java.lang.String attributeName)
attributeName - The name of the attribute for which the comparison
is to be performed. It must not be null.@NotNull public java.lang.String getAssertionValue()
getAssertionValue in interface ReadOnlyCompareRequest@NotNull public byte[] getAssertionValueBytes()
getAssertionValueBytes in interface ReadOnlyCompareRequest@NotNull public ASN1OctetString getRawAssertionValue()
getRawAssertionValue in interface ReadOnlyCompareRequestpublic void setAssertionValue(@NotNull java.lang.String assertionValue)
assertionValue - The assertion value to specify within the target
entry. It must not be null.public void setAssertionValue(@NotNull byte[] assertionValue)
assertionValue - The assertion value to specify within the target
entry. It must not be null.public void setAssertionValue(@NotNull ASN1OctetString assertionValue)
assertionValue - The assertion value to specify within the target
entry. It must not be null.public byte getProtocolOpType()
getProtocolOpType in interface ProtocolOppublic void writeTo(@NotNull ASN1Buffer buffer)
writeTo in interface ProtocolOpbuffer - The ASN.1 buffer to which the encoded representation should
be written.@NotNull public ASN1Element encodeProtocolOp()
encodeProtocolOp in interface ProtocolOp@NotNull protected CompareResult process(@NotNull LDAPConnection connection, int depth) throws LDAPException
process in class LDAPRequestconnection - The connection to use to communicate with the directory
server.depth - The current referral depth for this request. It should
always be one for the initial request, and should only
be incremented when following referrals.LDAPException - If a problem occurs while sending the request or
reading the response.@InternalUseOnly public void responseReceived(@NotNull LDAPResponse response) throws LDAPException
response - The LDAP response that has been received from the server.
It may be null if the connection has been closed
without having received any response.LDAPException - If a problem occurs while handling the response.public int getLastMessageID()
getLastMessageID in class LDAPRequest@NotNull public OperationType getOperationType()
getOperationType in class LDAPRequest@NotNull public CompareRequest duplicate()
duplicate in interface ReadOnlyCompareRequestduplicate in interface ReadOnlyLDAPRequest@NotNull public CompareRequest duplicate(@Nullable Control[] controls)
duplicate in interface ReadOnlyCompareRequestduplicate in interface ReadOnlyLDAPRequestcontrols - The set of controls to include in the duplicate request.public void toString(@NotNull java.lang.StringBuilder buffer)
toString in interface ProtocolOptoString in interface ReadOnlyLDAPRequesttoString in class LDAPRequestbuffer - The buffer to which to append a string representation of
this request.public void toCode(@NotNull java.util.List<java.lang.String> lineList, @NotNull java.lang.String requestID, int indentSpaces, boolean includeProcessing)
toCode in interface ReadOnlyLDAPRequestlineList - The list to which the source code lines should
be added.requestID - The name that should be used as an identifier
for the request. If this is null or
empty, then a generic ID will be used.indentSpaces - The number of spaces that should be used to
indent the generated code. It must not be
negative.includeProcessing - Indicates whether the generated code should
include code required to actually process the
request and handle the result (if true),
or just to generate the request (if
false).