Package org.opends.server.core
Class CompareOperation
java.lang.Object
org.opends.server.types.Operation
org.opends.server.core.CompareOperation
- All Implemented Interfaces:
PluginOperation
,PostCommitOperation
,PostOperationCompareOperation
,PostOperationOperation
,PostResponseCompareOperation
,PostResponseOperation
,PreOperationCompareOperation
,PreOperationOperation
,PreParseCompareOperation
,PreParseOperation
public final class CompareOperation
extends Operation
implements PreParseCompareOperation, PreOperationCompareOperation, PostOperationCompareOperation, PostResponseCompareOperation
This class defines an operation that may be used to determine whether a specified entry in the Directory Server
contains a given attribute-value pair.
-
Field Summary
Fields inherited from class org.opends.server.types.Operation
backend, context, out, pluginConfigManager, request, serverContext
-
Constructor Summary
ConstructorDescriptionCompareOperation
(RequestContext context, LocalBackend<?> backend, CompareRequest request, Consumer<ResponseStream> out) Creates a new compare operation. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addResponseControl
(Control control) Adds the provided control to the set of controls to include in the response to the client.Retrieves the assertion value for this compare operation.Retrieves the attribute description for this compare operation.Retrieves the DN of the entry to compare.Retrieves the entry to target with the compare operation.Returns the request associated to this operation.Retrieves the set of controls to include in the response to the client.protected void
Invokes any applicable post-response plugins.protected boolean
Invokes any applicable pre-parse plugins.void
removeResponseControl
(Control control) Removes the provided control from the set of controls to include in the response to the client.protected boolean
runImpl()
Performs the work of actually processing this operation.void
setAssertionValue
(ByteString assertionValue) Specifies the assertion value for this compare operation.void
setAttributeDescription
(AttributeDescription attributeDescription) Specifies the attribute description for this compare operation.void
setEntryDN
(Dn entryDN) Specifies the entry DN as included in the client request.void
toString
(StringBuilder buffer) Appends a string representation of this operation to the provided buffer.Methods inherited from class org.opends.server.types.Operation
addAdditionalLogItem, addPasswordPolicyWarningToLog, addPostReadResponse, addPreReadResponse, addRequestControl, appendErrorMessage, appendMaskedErrorMessage, checkAttributeConformsToSyntax, checkIfBackendIsWritable, checkIfCanceled, createLdapException, equals, evaluateProxyAuthControls, getAdditionalLogItems, getAttachment, getAttachments, getAuthorizationDN, getAuthorizationEntry, getClientConnection, getConnectionID, getErrorMessage, getLargestEntrySize, getMatchedDN, getMessageID, getOperationID, getProxiedAuthorizationDN, getReferralURLs, getRequestContext, getRequestControl, getRequestControls, getResultCode, hashCode, hasPrivilege, hasRequestControl, isInternalOperation, isProxyAuthzControl, isSynchronizationOperation, mustCheckSchema, operationToResult, processOperationResult, removeAllDisallowedControls, run, sendResponses, sendResult, setAttachment, setErrorMessage, setMatchedDN, setReferralURLs, setResult, setResult, setResultCode, setResultCodeAndMessageNoInfoDisclosure, toString, trySetLargestEntrySize
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.opends.server.types.operation.PluginOperation
checkIfCanceled, getAttachment, getAttachments, getClientConnection, getConnectionID, getMessageID, getOperationID, getRequestControl, getRequestControl, getRequestControls, hasPrivilege, isInternalOperation, isSynchronizationOperation, setAttachment, toString
Methods inherited from interface org.opends.server.types.operation.PostOperationOperation
addAdditionalLogItem, appendErrorMessage, getAdditionalLogItems, getAuthorizationDN, getErrorMessage, getMatchedDN, getReferralURLs, getResultCode, setErrorMessage, setMatchedDN, setReferralURLs, setResult, setResultCode
Methods inherited from interface org.opends.server.types.operation.PostResponseOperation
getAdditionalLogItems, getAuthorizationDN, getErrorMessage, getMatchedDN, getReferralURLs, getResultCode
Methods inherited from interface org.opends.server.types.operation.PreOperationOperation
addAdditionalLogItem, appendErrorMessage, getAdditionalLogItems, getAuthorizationDN, getErrorMessage, sendResponses, setErrorMessage
Methods inherited from interface org.opends.server.types.operation.PreParseOperation
addAdditionalLogItem, addRequestControl, appendErrorMessage, getAdditionalLogItems, getErrorMessage, sendResponses, setErrorMessage
-
Constructor Details
-
CompareOperation
public CompareOperation(RequestContext context, LocalBackend<?> backend, CompareRequest request, Consumer<ResponseStream> out) Creates a new compare operation.- Parameters:
context
- The context.backend
- The local backend in which this request is to be processed.request
- The request.out
- A consumer responsible for sending responses to the client.
-
-
Method Details
-
setEntryDN
Specifies the entry DN as included in the client request. This should only be called by preparse plugins.- Specified by:
setEntryDN
in interfacePreParseCompareOperation
- Parameters:
entryDN
- The entry DN for this compare operation.
-
getEntryDN
Retrieves the DN of the entry to compare.- Specified by:
getEntryDN
in interfacePostOperationCompareOperation
- Specified by:
getEntryDN
in interfacePostResponseCompareOperation
- Specified by:
getEntryDN
in interfacePreOperationCompareOperation
- Specified by:
getEntryDN
in interfacePreParseCompareOperation
- Returns:
- The DN of the entry to compare.
-
setAttributeDescription
Description copied from interface:PreParseCompareOperation
Specifies the attribute description for this compare operation.- Specified by:
setAttributeDescription
in interfacePreParseCompareOperation
- Parameters:
attributeDescription
- The attribute description for this compare operation.
-
getAttributeDescription
Description copied from interface:PreParseCompareOperation
Retrieves the attribute description for this compare operation.- Specified by:
getAttributeDescription
in interfacePostOperationCompareOperation
- Specified by:
getAttributeDescription
in interfacePostResponseCompareOperation
- Specified by:
getAttributeDescription
in interfacePreOperationCompareOperation
- Specified by:
getAttributeDescription
in interfacePreParseCompareOperation
- Returns:
- The attribute description for this compare operation.
-
getAssertionValue
Description copied from interface:PreParseCompareOperation
Retrieves the assertion value for this compare operation.- Specified by:
getAssertionValue
in interfacePostOperationCompareOperation
- Specified by:
getAssertionValue
in interfacePostResponseCompareOperation
- Specified by:
getAssertionValue
in interfacePreOperationCompareOperation
- Specified by:
getAssertionValue
in interfacePreParseCompareOperation
- Returns:
- The assertion value for this compare operation.
-
setAssertionValue
Specifies the assertion value for this compare operation. This should only be called by preparse and preoperation plugins.- Specified by:
setAssertionValue
in interfacePreOperationCompareOperation
- Specified by:
setAssertionValue
in interfacePreParseCompareOperation
- Parameters:
assertionValue
- The assertion value for this compare operation.
-
getRequest
Description copied from class:Operation
Returns the request associated to this operation.- Specified by:
getRequest
in interfacePluginOperation
- Overrides:
getRequest
in classOperation
- Returns:
- The request associated to this operation.
-
getResponseControls
Description copied from interface:PluginOperation
Retrieves the set of controls to include in the response to the client. The contents of this list must not be altered.- Specified by:
getResponseControls
in interfacePluginOperation
- Returns:
- The set of controls to include in the response to the client.
-
addResponseControl
Description copied from class:Operation
Adds the provided control to the set of controls to include in the response to the client.This method may not be called by post-response plugins.
- Specified by:
addResponseControl
in interfacePostOperationOperation
- Specified by:
addResponseControl
in interfacePreOperationOperation
- Specified by:
addResponseControl
in interfacePreParseOperation
- Specified by:
addResponseControl
in classOperation
- Parameters:
control
- The control to add to the set of controls to include in the response to the client.
-
removeResponseControl
Description copied from class:Operation
Removes the provided control from the set of controls to include in the response to the client.This method may not be called by post-response plugins.
- Specified by:
removeResponseControl
in interfacePostOperationOperation
- Specified by:
removeResponseControl
in interfacePreOperationOperation
- Specified by:
removeResponseControl
in interfacePreParseOperation
- Specified by:
removeResponseControl
in classOperation
- Parameters:
control
- The control to remove from the set of controls to include in the response to the client.
-
runImpl
Description copied from class:Operation
Performs the work of actually processing this operation.- Specified by:
runImpl
in classOperation
- Returns:
true
if the result should be sent immediately, orfalse
if it will be sent later, e.g. as part of a persistent search.- Throws:
LdapException
- If an error occurred when processing the operation.
-
invokePreParsePlugins
Description copied from class:Operation
Invokes any applicable pre-parse plugins.- Specified by:
invokePreParsePlugins
in classOperation
- Returns:
true
if processing should continue.- Throws:
LdapException
- If an error occurred when invoking the pre-parse plugins.
-
invokePostResponsePlugins
protected void invokePostResponsePlugins()Description copied from class:Operation
Invokes any applicable post-response plugins.- Specified by:
invokePostResponsePlugins
in classOperation
-
toString
Description copied from interface:PluginOperation
Appends a string representation of this operation to the provided buffer.- Specified by:
toString
in interfacePluginOperation
- Specified by:
toString
in classOperation
- Parameters:
buffer
- The buffer into which a string representation of this operation should be appended.
-
getEntryToCompare
Retrieves the entry to target with the compare operation.- Specified by:
getEntryToCompare
in interfacePostOperationCompareOperation
- Specified by:
getEntryToCompare
in interfacePostResponseCompareOperation
- Specified by:
getEntryToCompare
in interfacePreOperationCompareOperation
- Returns:
- The entry to target with the compare operation, or
null
if the entry is not yet available.
-