Package org.opends.server.core
Class ExtendedOperationBasis
- java.lang.Object
-
- org.opends.server.types.AbstractOperation
-
- org.opends.server.core.ExtendedOperationBasis
-
- All Implemented Interfaces:
Runnable,ExtendedOperation,Operation,PluginOperation,PostOperationExtendedOperation,PostOperationOperation,PostResponseExtendedOperation,PostResponseOperation,PreOperationExtendedOperation,PreOperationOperation,PreParseExtendedOperation,PreParseOperation
public class ExtendedOperationBasis extends AbstractOperation implements ExtendedOperation, 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.AbstractOperation
cancelRequest, cancelResult, clientConnection, messageID, NO_RESPONSE_CONTROLS, operationID
-
Fields inherited from interface org.opends.server.types.Operation
LOCALBACKENDOPERATIONS
-
-
Constructor Summary
Constructors Constructor Description ExtendedOperationBasis(ClientConnection clientConnection, long operationID, int messageID, List<Control> requestControls, String requestOID, ByteString requestValue)Creates a new extended operation with the provided information.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddResponseControl(Control control)Adds the provided control to the set of controls to include in the response to the client.OperationTypegetOperationType()Retrieves the operation type for this operation.DNgetProxiedAuthorizationDN()Retrieves the proxied authorization DN for this operation if proxied authorization has been requested.StringgetRequestOID()Retrieves the OID for the request associated with this extended operation.ByteStringgetRequestValue()Retrieves the value for the request associated with this extended operation.List<Control>getResponseControls()Retrieves the set of controls to include in the response to the client.StringgetResponseOID()Retrieves the OID to include in the response to the client.ByteStringgetResponseValue()Retrieves the value to include in the response to the client.voidremoveResponseControl(Control control)Removes the provided control from the set of controls to include in the response to the client.voidrun()Performs the work of actually processing this operation.voidsetProxiedAuthorizationDN(DN proxiedAuthorizationDN)Set the proxied authorization DN for this operation if proxied authorization has been requested.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.AbstractOperation
abort, addAdditionalLogItem, addRequestControl, appendErrorMessage, appendMaskedErrorMessage, cancel, checkIfCanceled, disconnectClient, dontSynchronize, equals, getAdditionalLogItems, getAttachment, getAttachments, getAuthorizationDN, getAuthorizationEntry, getCancelRequest, getCancelResult, getClientConnection, getConnectionID, getErrorMessage, getMaskedErrorMessage, getMaskedResultCode, getMatchedDN, getMessageID, getOperationID, getProcessingNanoTime, getProcessingStartTime, getProcessingStopTime, getProcessingTime, getReferralURLs, getRequestControl, getRequestControls, getResultCode, getTransactionId, hashCode, invokePostResponseCallbacks, isInnerOperation, isInternalOperation, isSynchronizationOperation, operationCompleted, processOperationResult, processOperationResult, registerPostResponseCallback, removeAttachment, setAttachment, setAttachments, setAuthorizationEntry, setDontSynchronize, setErrorMessage, setInnerOperation, setInternalOperation, setMaskedErrorMessage, setMaskedResultCode, setMatchedDN, setProcessingStartTime, setProcessingStopTime, setReferralURLs, setResponseData, setResultCode, setSynchronizationOperation, toString, updateOperationErrMsgAndResCode
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.opends.server.types.Operation
abort, addAdditionalLogItem, addRequestControl, appendErrorMessage, appendMaskedErrorMessage, cancel, checkIfCanceled, disconnectClient, dontSynchronize, getAdditionalLogItems, getAttachment, getAttachments, getAuthorizationDN, getAuthorizationEntry, getCancelRequest, getCancelResult, getClientConnection, getConnectionID, getErrorMessage, getMaskedErrorMessage, getMaskedResultCode, getMatchedDN, getMessageID, getOperationID, getProcessingNanoTime, getProcessingStartTime, getProcessingStopTime, getProcessingTime, getReferralURLs, getRequestControl, getRequestControls, getResultCode, isInnerOperation, isInternalOperation, isSynchronizationOperation, operationCompleted, registerPostResponseCallback, removeAttachment, setAttachment, setAttachments, setAuthorizationEntry, setDontSynchronize, setErrorMessage, setInnerOperation, setInternalOperation, setMaskedErrorMessage, setMaskedResultCode, setMatchedDN, setReferralURLs, setResponseData, setResultCode, setSynchronizationOperation, toString
-
Methods inherited from interface org.opends.server.types.operation.PluginOperation
checkIfCanceled, disconnectClient, getAttachment, getAttachments, getClientConnection, getConnectionID, getMessageID, getOperationID, getProcessingStartTime, getRequestControl, getRequestControls, isInternalOperation, isSynchronizationOperation, removeAttachment, setAttachment, toString
-
Methods inherited from interface org.opends.server.types.operation.PostOperationOperation
addAdditionalLogItem, appendErrorMessage, getAdditionalLogItems, getAuthorizationDN, getErrorMessage, getMatchedDN, getReferralURLs, getResultCode, setErrorMessage, setMatchedDN, setReferralURLs, setResponseData, setResultCode
-
Methods inherited from interface org.opends.server.types.operation.PreOperationOperation
addAdditionalLogItem, appendErrorMessage, getAdditionalLogItems, getAuthorizationDN, getErrorMessage, setErrorMessage
-
Methods inherited from interface org.opends.server.types.operation.PreParseOperation
addAdditionalLogItem, addRequestControl, appendErrorMessage, getAdditionalLogItems, getErrorMessage, setErrorMessage
-
-
-
-
Constructor Detail
-
ExtendedOperationBasis
public ExtendedOperationBasis(ClientConnection clientConnection, long operationID, int messageID, List<Control> requestControls, String requestOID, ByteString requestValue)
Creates a new extended operation with the provided information.- Parameters:
clientConnection- The client connection with which this operation is associated.operationID- The operation ID for this operation.messageID- The message ID of the request with which this operation is associated.requestControls- The set of controls included in the request.requestOID- The OID for the request associated with this extended operation.requestValue- The value for the request associated with this extended operation.
-
-
Method Detail
-
getRequestOID
public final String getRequestOID()
Description copied from interface:ExtendedOperationRetrieves the OID for the request associated with this extended operation.- Specified by:
getRequestOIDin interfaceExtendedOperation- 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
public final void setRequestOID(String requestOID)
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.
-
getProxiedAuthorizationDN
public DN getProxiedAuthorizationDN()
Description copied from interface:OperationRetrieves the proxied authorization DN for this operation if proxied authorization has been requested.- Specified by:
getProxiedAuthorizationDNin interfaceOperation- Returns:
- The proxied authorization DN for this operation if proxied
authorization has been requested, or
nullif proxied authorization has not been requested.
-
setProxiedAuthorizationDN
public void setProxiedAuthorizationDN(DN proxiedAuthorizationDN)
Description copied from interface:OperationSet the proxied authorization DN for this operation if proxied authorization has been requested.- Specified by:
setProxiedAuthorizationDNin interfaceOperation- Parameters:
proxiedAuthorizationDN- The proxied authorization DN for this operation if proxied authorization has been requested, ornullif proxied authorization has not been requested.
-
getRequestValue
public final ByteString getRequestValue()
Description copied from interface:ExtendedOperationRetrieves the value for the request associated with this extended operation.- Specified by:
getRequestValuein interfaceExtendedOperation- 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
public final void setRequestValue(ByteString requestValue)
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
public final String getResponseOID()
Description copied from interface:ExtendedOperationRetrieves the OID to include in the response to the client.- Specified by:
getResponseOIDin interfaceExtendedOperation- Specified by:
getResponseOIDin interfacePostOperationExtendedOperation- Specified by:
getResponseOIDin interfacePostResponseExtendedOperation- Returns:
- The OID to include in the response to the client.
-
setResponseOID
public final void setResponseOID(String responseOID)
Description copied from interface:ExtendedOperationSpecifies the OID to include in the response to the client.- Specified by:
setResponseOIDin interfaceExtendedOperation- 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
public final ByteString getResponseValue()
Description copied from interface:ExtendedOperationRetrieves the value to include in the response to the client.- Specified by:
getResponseValuein interfaceExtendedOperation- Specified by:
getResponseValuein interfacePostOperationExtendedOperation- Specified by:
getResponseValuein interfacePostResponseExtendedOperation- Returns:
- The value to include in the response to the client.
-
setResponseValue
public final void setResponseValue(ByteString responseValue)
Description copied from interface:ExtendedOperationSpecifies the value to include in the response to the client.- Specified by:
setResponseValuein interfaceExtendedOperation- Specified by:
setResponseValuein interfacePostOperationExtendedOperation- Specified by:
setResponseValuein interfacePreOperationExtendedOperation- Specified by:
setResponseValuein interfacePreParseExtendedOperation- Parameters:
responseValue- The value to include in the response to the client.
-
getOperationType
public final OperationType getOperationType()
Description copied from interface:OperationRetrieves the operation type for this operation.- Specified by:
getOperationTypein interfaceOperation- Specified by:
getOperationTypein interfacePluginOperation- Returns:
- The operation type for this operation.
-
getResponseControls
public final List<Control> getResponseControls()
Description copied from interface:OperationRetrieves the set of controls to include in the response to the client. The contents of this list must not be altered.- Specified by:
getResponseControlsin interfaceOperation- Specified by:
getResponseControlsin interfacePluginOperation- Returns:
- The set of controls to include in the response to the client.
-
addResponseControl
public final void addResponseControl(Control control)
Description copied from interface: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 interfaceOperation- Specified by:
addResponseControlin interfacePostOperationOperation- Specified by:
addResponseControlin interfacePreOperationOperation- Specified by:
addResponseControlin interfacePreParseOperation- Parameters:
control- The control to add to the set of controls to include in the response to the client.
-
removeResponseControl
public final void removeResponseControl(Control control)
Description copied from interface: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 interfaceOperation- Specified by:
removeResponseControlin interfacePostOperationOperation- Specified by:
removeResponseControlin interfacePreOperationOperation- Specified by:
removeResponseControlin interfacePreParseOperation- Parameters:
control- The control to remove from the set of controls to include in the response to the client.
-
run
public final void run()
Performs the work of actually processing this operation. This should include all processing for the operation, including invoking plugins, logging messages, performing access control, managing synchronization, and any other work that might need to be done in the course of processing.
-
toString
public final void toString(StringBuilder buffer)
Description copied from interface:OperationAppends a string representation of this operation to the provided buffer.- Specified by:
toStringin interfaceOperation- Specified by:
toStringin interfacePluginOperation- Parameters:
buffer- The buffer into which a string representation of this operation should be appended.
-
-