Package org.opends.server.core
Class ExtendedOperation
java.lang.Object
org.opends.server.types.Operation
org.opends.server.core.ExtendedOperation
- All Implemented Interfaces:
PluginOperation,PostCommitOperation,PostOperationExtendedOperation,PostOperationOperation,PostResponseExtendedOperation,PostResponseOperation,PreOperationExtendedOperation,PreOperationOperation,PreParseExtendedOperation,PreParseOperation
public final class ExtendedOperation
extends Operation
implements PreParseExtendedOperation, PreOperationExtendedOperation, PostOperationExtendedOperation, PostResponseExtendedOperation
This class defines an extended operation, which can perform virtually any kind of task.
-
Field Summary
Fields inherited from class org.opends.server.types.Operation
backend, context, out, pluginConfigManager, request, serverContext -
Constructor Summary
ConstructorsConstructorDescriptionExtendedOperation(RequestContext context, LocalBackend<?> backend, ExtendedRequest<?> request, Consumer<ResponseStream> out) Creates a new extended operation. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddResponseControl(Control control) Adds the provided control to the set of controls to include in the response to the client.Returns the request associated to this operation.Retrieves the OID for the request associated with this extended operation.Retrieves the value for the request associated with this extended operation.Retrieves the set of controls to include in the response to the client.Retrieves the OID to include in the response to the client.Retrieves the value to include in the response to the client.protected voidInvokes any applicable post-response plugins.protected booleanInvokes any applicable pre-parse plugins.protected ResultGenerates a result for this operation.voidremoveResponseControl(Control control) Removes the provided control from the set of controls to include in the response to the client.protected booleanrunImpl()Performs the work of actually processing this operation.voidsetRequestOID(String requestOID) Specifies the OID for the request associated with this extended operation.voidsetRequestValue(ByteString requestValue) Specifies the value for the request associated with this extended operation.voidsetResponseOID(String responseOID) Specifies the OID to include in the response to the client.voidsetResponseValue(ByteString responseValue) Specifies the value to include in the response to the client.voidtoString(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, processOperationResult, removeAllDisallowedControls, run, sendResponses, sendResult, setAttachment, setErrorMessage, setMatchedDN, setReferralURLs, setResult, setResult, setResultCode, setResultCodeAndMessageNoInfoDisclosure, toString, trySetLargestEntrySizeMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.opends.server.types.operation.PluginOperation
checkIfCanceled, getAttachment, getAttachments, getClientConnection, getConnectionID, getMessageID, getOperationID, getRequestControl, getRequestControl, getRequestControls, hasPrivilege, isInternalOperation, isSynchronizationOperation, setAttachment, toStringMethods inherited from interface org.opends.server.types.operation.PostOperationOperation
addAdditionalLogItem, appendErrorMessage, getAdditionalLogItems, getAuthorizationDN, getErrorMessage, getMatchedDN, getReferralURLs, getResultCode, setErrorMessage, setMatchedDN, setReferralURLs, setResult, setResultCodeMethods inherited from interface org.opends.server.types.operation.PreOperationOperation
addAdditionalLogItem, appendErrorMessage, getAdditionalLogItems, getAuthorizationDN, getErrorMessage, sendResponses, setErrorMessageMethods inherited from interface org.opends.server.types.operation.PreParseOperation
addAdditionalLogItem, addRequestControl, appendErrorMessage, getAdditionalLogItems, getErrorMessage, sendResponses, setErrorMessage
-
Constructor Details
-
ExtendedOperation
public ExtendedOperation(RequestContext context, LocalBackend<?> backend, ExtendedRequest<?> request, Consumer<ResponseStream> out) Creates a new extended 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
-
getRequestOID
Retrieves the OID for the request associated with this extended operation.- Specified by:
getRequestOIDin interfacePostOperationExtendedOperation- Specified by:
getRequestOIDin interfacePostResponseExtendedOperation- Specified by:
getRequestOIDin interfacePreOperationExtendedOperation- Specified by:
getRequestOIDin interfacePreParseExtendedOperation- Returns:
- The OID for the request associated with this extended operation.
-
setRequestOID
Specifies the OID for the request associated with this extended operation. This should only be called by pre-parse plugins.- Specified by:
setRequestOIDin interfacePreParseExtendedOperation- Parameters:
requestOID- The OID for the request associated with this extended operation.
-
getRequestValue
Retrieves the value for the request associated with this extended operation.- Specified by:
getRequestValuein interfacePostOperationExtendedOperation- Specified by:
getRequestValuein interfacePostResponseExtendedOperation- Specified by:
getRequestValuein interfacePreOperationExtendedOperation- Specified by:
getRequestValuein interfacePreParseExtendedOperation- Returns:
- The value for the request associated with this extended operation.
-
setRequestValue
Specifies the value for the request associated with this extended operation. This should only be called by pre-parse plugins.- Specified by:
setRequestValuein interfacePreParseExtendedOperation- Parameters:
requestValue- The value for the request associated with this extended operation.
-
getResponseOID
Retrieves the OID to include in the response to the client.- Specified by:
getResponseOIDin interfacePostOperationExtendedOperation- Specified by:
getResponseOIDin interfacePostResponseExtendedOperation- Returns:
- The OID to include in the response to the client.
-
setResponseOID
Specifies the OID to include in the response to the client.- Specified by:
setResponseOIDin interfacePostOperationExtendedOperation- Specified by:
setResponseOIDin interfacePreOperationExtendedOperation- Specified by:
setResponseOIDin interfacePreParseExtendedOperation- Parameters:
responseOID- The OID to include in the response to the client.
-
getResponseValue
Retrieves the value to include in the response to the client.- Specified by:
getResponseValuein interfacePostOperationExtendedOperation- Specified by:
getResponseValuein interfacePostResponseExtendedOperation- Returns:
- The value to include in the response to the client.
-
setResponseValue
Specifies the value to include in the response to the client.- Specified by:
setResponseValuein interfacePostOperationExtendedOperation- Specified by:
setResponseValuein interfacePreOperationExtendedOperation- Specified by:
setResponseValuein interfacePreParseExtendedOperation- Parameters:
responseValue- The value to include in the response to the client.
-
getRequest
Description copied from class:OperationReturns the request associated to this operation.- Specified by:
getRequestin interfacePluginOperation- Overrides:
getRequestin classOperation- Returns:
- The request associated to this operation.
-
getResponseControls
Description copied from interface:PluginOperationRetrieves the set of controls to include in the response to the client. The contents of this list must not be altered.- Specified by:
getResponseControlsin interfacePluginOperation- Returns:
- The set of controls to include in the response to the client.
-
addResponseControl
Description copied from class:OperationAdds 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:
addResponseControlin interfacePostOperationOperation- Specified by:
addResponseControlin interfacePreOperationOperation- Specified by:
addResponseControlin interfacePreParseOperation- Specified by:
addResponseControlin 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:OperationRemoves 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:
removeResponseControlin interfacePostOperationOperation- Specified by:
removeResponseControlin interfacePreOperationOperation- Specified by:
removeResponseControlin interfacePreParseOperation- Specified by:
removeResponseControlin 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:OperationPerforms the work of actually processing this operation.- Specified by:
runImplin classOperation- Returns:
trueif the result should be sent immediately, orfalseif 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:OperationInvokes any applicable pre-parse plugins.- Specified by:
invokePreParsePluginsin classOperation- Returns:
trueif processing should continue.- Throws:
LdapException- If an error occurred when invoking the pre-parse plugins.
-
invokePostResponsePlugins
protected void invokePostResponsePlugins()Description copied from class:OperationInvokes any applicable post-response plugins.- Specified by:
invokePostResponsePluginsin classOperation
-
operationToResult
Description copied from class:OperationGenerates a result for this operation.- Overrides:
operationToResultin classOperation- Returns:
- The result.
-
toString
Description copied from interface:PluginOperationAppends a string representation of this operation to the provided buffer.- Specified by:
toStringin interfacePluginOperation- Specified by:
toStringin classOperation- Parameters:
buffer- The buffer into which a string representation of this operation should be appended.
-