org.opends.server.core
Interface ModifyDNOperation

All Superinterfaces:
InProgressOperation, Operation, PluginOperation, SubordinateModifyDNOperation
All Known Implementing Classes:
LocalBackendModifyDNOperation, ModifyDNOperationBasis, ModifyDNOperationWrapper

public interface ModifyDNOperation
extends Operation, SubordinateModifyDNOperation

This interface defines an operation used to move an entry in the Directory Server.


Field Summary
 
Fields inherited from interface org.opends.server.types.Operation
LOCALBACKENDOPERATIONS
 
Method Summary
 void addModification(Modification modification)
          Adds the provided modification to the set of modifications to be applied as part of the update.
 boolean deleteOldRDN()
          Indicates whether the current RDN value should be removed from the entry.
 long getChangeNumber()
          Retrieves the change number that has been assigned to this operation.
 DN getEntryDN()
          Retrieves the DN of the entry to rename.
 java.util.List<Modification> getModifications()
          Retrieves the set of modifications applied to attributes of the target entry in the course of processing this modify DN operation.
 DN getNewDN()
          Retrieves the new DN for the entry.
 RDN getNewRDN()
          Retrieves the new RDN to use for the entry.
 DN getNewSuperior()
          Retrieves the newSuperior DN for the entry.
 Entry getOriginalEntry()
          Retrieves the current entry, before it is renamed.
 DN getProxiedAuthorizationDN()
          Retrieves the proxied authorization DN for this operation if proxied authorization has been requested.
 ByteString getRawEntryDN()
          Retrieves the raw, unprocessed entry DN as included in the client request.
 ByteString getRawNewRDN()
          Retrieves the raw, unprocessed newRDN as included in the request from the client.
 ByteString getRawNewSuperior()
          Retrieves the raw, unprocessed newSuperior from the client request.
 Entry getUpdatedEntry()
          Retrieves the new entry, as it will appear after it is renamed.
 void setChangeNumber(long changeNumber)
          Specifies the change number that has been assigned to this operation by the synchronization mechanism.
 void setDeleteOldRDN(boolean deleteOldRDN)
          Specifies whether the current RDN value should be removed from the entry.
 void setProxiedAuthorizationDN(DN dn)
          Sets the proxied authorization DN for this operation if proxied authorization has been requested.
 void setRawEntryDN(ByteString rawEntryDN)
          Specifies the raw, unprocessed entry DN as included in the client request.
 void setRawNewRDN(ByteString rawNewRDN)
          Specifies the raw, unprocessed newRDN as included in the request from the client.
 void setRawNewSuperior(ByteString rawNewSuperior)
          Specifies the raw, unprocessed newSuperior for this modify DN operation, as provided in the request from the client.
 
Methods inherited from interface org.opends.server.types.Operation
abort, addRequestControl, addResponseControl, appendAdditionalLogMessage, appendErrorMessage, cancel, checkIfCanceled, disconnectClient, dontSynchronize, getAdditionalLogMessage, getAttachment, getAttachments, getAuthorizationDN, getAuthorizationEntry, getCancelRequest, getCancelResult, getClientConnection, getCommonLogElements, getConnectionID, getErrorMessage, getMatchedDN, getMessageID, getOperationID, getOperationType, getProcessingNanoTime, getProcessingStartTime, getProcessingStopTime, getProcessingTime, getReferralURLs, getRequestControls, getRequestLogElements, getResponseControls, getResponseLogElements, getResultCode, isInternalOperation, isSynchronizationOperation, operationCompleted, removeAttachment, removeRequestControl, removeResponseControl, setAdditionalLogMessage, setAttachment, setAttachments, setAuthorizationEntry, setDontSynchronize, setErrorMessage, setInternalOperation, setMatchedDN, setReferralURLs, setResponseData, setResultCode, setSynchronizationOperation, toString, toString
 
Methods inherited from interface org.opends.server.types.operation.InProgressOperation
addResponseControl, appendAdditionalLogMessage, appendErrorMessage, getAdditionalLogMessage, getAuthorizationDN, getErrorMessage, getMatchedDN, getReferralURLs, getResultCode, removeResponseControl, setAdditionalLogMessage, setErrorMessage, setMatchedDN, setReferralURLs, setResponseData, setResultCode
 
Methods inherited from interface org.opends.server.types.operation.PluginOperation
checkIfCanceled, disconnectClient, getAttachment, getAttachments, getClientConnection, getConnectionID, getMessageID, getOperationID, getOperationType, getProcessingStartTime, getRequestControls, getResponseControls, isInternalOperation, isSynchronizationOperation, removeAttachment, setAttachment, toString, toString
 

Method Detail

getRawEntryDN

ByteString getRawEntryDN()
Retrieves the raw, unprocessed entry DN as included in the client request. The DN that is returned may or may not be a valid DN, since no validation will have been performed upon it.

Specified by:
getRawEntryDN in interface SubordinateModifyDNOperation
Returns:
The raw, unprocessed entry DN as included in the client request.

setRawEntryDN

void setRawEntryDN(ByteString rawEntryDN)
Specifies the raw, unprocessed entry DN as included in the client request. This should only be called by pre-parse plugins.

Parameters:
rawEntryDN - The raw, unprocessed entry DN as included in the client request.

getEntryDN

DN getEntryDN()
Retrieves the DN of the entry to rename. This should not be called by pre-parse plugins because the processed DN will not be available yet. Instead, they should call the getRawEntryDN method.

Specified by:
getEntryDN in interface SubordinateModifyDNOperation
Returns:
The DN of the entry to rename, or null if the raw entry DN has not yet been processed.

getRawNewRDN

ByteString getRawNewRDN()
Retrieves the raw, unprocessed newRDN as included in the request from the client. This may or may not contain a valid RDN, as no validation will have been performed on it.

Specified by:
getRawNewRDN in interface SubordinateModifyDNOperation
Returns:
The raw, unprocessed newRDN as included in the request from the client.

setRawNewRDN

void setRawNewRDN(ByteString rawNewRDN)
Specifies the raw, unprocessed newRDN as included in the request from the client. This should only be called by pre-parse plugins and should not be used in later stages of processing.

Parameters:
rawNewRDN - The raw, unprocessed newRDN as included in the request from the client.

getNewRDN

RDN getNewRDN()
Retrieves the new RDN to use for the entry. This should not be called by pre-parse plugins, because the processed newRDN will not yet be available. Pre-parse plugins should instead use the getRawNewRDN method.

Specified by:
getNewRDN in interface SubordinateModifyDNOperation
Returns:
The new RDN to use for the entry, or null if the raw newRDN has not yet been processed.

deleteOldRDN

boolean deleteOldRDN()
Indicates whether the current RDN value should be removed from the entry.

Specified by:
deleteOldRDN in interface SubordinateModifyDNOperation
Returns:
true if the current RDN value should be removed from the entry, or false if not.

setDeleteOldRDN

void setDeleteOldRDN(boolean deleteOldRDN)
Specifies whether the current RDN value should be removed from the entry.

Parameters:
deleteOldRDN - Specifies whether the current RDN value should be removed from the entry.

getRawNewSuperior

ByteString getRawNewSuperior()
Retrieves the raw, unprocessed newSuperior from the client request. This may or may not contain a valid DN, as no validation will have been performed on it.

Specified by:
getRawNewSuperior in interface SubordinateModifyDNOperation
Returns:
The raw, unprocessed newSuperior from the client request, or null if there is none.

setRawNewSuperior

void setRawNewSuperior(ByteString rawNewSuperior)
Specifies the raw, unprocessed newSuperior for this modify DN operation, as provided in the request from the client. This method should only be called by pre-parse plugins.

Parameters:
rawNewSuperior - The raw, unprocessed newSuperior as provided in the request from the client.

getNewSuperior

DN getNewSuperior()
Retrieves the newSuperior DN for the entry. This should not be called by pre-parse plugins, because the processed DN will not yet be available at that time. Instead, they should use the getRawNewSuperior method.

Specified by:
getNewSuperior in interface SubordinateModifyDNOperation
Returns:
The newSuperior DN for the entry, or null if there is no newSuperior DN for this request or if the raw newSuperior has not yet been processed.

getNewDN

DN getNewDN()
Retrieves the new DN for the entry.

Returns:
The new DN for the entry, or null if there is neither newRDN, nor entryDN for this request.

getModifications

java.util.List<Modification> getModifications()
Retrieves the set of modifications applied to attributes of the target entry in the course of processing this modify DN operation. This will include attribute-level changes from the modify DN itself (e.g., removing old RDN values if deleteOldRDN is set, or adding new RDN values that don't already exist), but it may also be used by pre-operation plugins to cause additional changes in the entry. In this case, those plugins may add modifications to this list (they may not remove existing modifications) if any changes should be processed in addition to the core modify DN processing. Backends may read this list to identify which attribute-level changes were applied in order to more easily apply updates to attribute indexes.

Returns:
The set of modifications applied to attributes during the course of the modify DN processing, or null if that information is not yet available (e.g., during pre-parse plugins).

addModification

void addModification(Modification modification)
Adds the provided modification to the set of modifications to be applied as part of the update. This should only be called by pre-operation plugins.

Parameters:
modification - The modification to add to the set of modifications to apply to the entry.

getOriginalEntry

Entry getOriginalEntry()
Retrieves the current entry, before it is renamed. This will not be available to pre-parse plugins or during the conflict resolution portion of the synchronization processing.

Specified by:
getOriginalEntry in interface SubordinateModifyDNOperation
Returns:
The current entry, or null if it is not yet available.

getUpdatedEntry

Entry getUpdatedEntry()
Retrieves the new entry, as it will appear after it is renamed. This will not be available to pre-parse plugins or during the conflict resolution portion of the synchronization processing.

Specified by:
getUpdatedEntry in interface SubordinateModifyDNOperation
Returns:
The updated entry, or null if it is not yet available.

getChangeNumber

long getChangeNumber()
Retrieves the change number that has been assigned to this operation.

Returns:
The change number that has been assigned to this operation, or -1 if none has been assigned yet or if there is no applicable synchronization mechanism in place that uses change numbers.

setChangeNumber

void setChangeNumber(long changeNumber)
Specifies the change number that has been assigned to this operation by the synchronization mechanism.

Parameters:
changeNumber - The change number that has been assigned to this operation by the synchronization mechanism.

getProxiedAuthorizationDN

DN getProxiedAuthorizationDN()
Retrieves the proxied authorization DN for this operation if proxied authorization has been requested.

Returns:
The proxied authorization DN for this operation if proxied authorization has been requested, or null if proxied authorization has not been requested.

setProxiedAuthorizationDN

void setProxiedAuthorizationDN(DN dn)
Sets the proxied authorization DN for this operation if proxied authorization has been requested.

Parameters:
dn - The proxied authorization DN for this operation if proxied authorization has been requested, or null if proxied authorization has not been requested.