Class ModifyDnRequest
java.lang.Object
org.forgerock.opendj.ldap.messages.ModifyDnRequest
- All Implemented Interfaces:
ProtocolOp
,Request
,ChangeRecord
The Modify DN operation allows a client to change the Relative Distinguished
Name (RDN) of an entry in the Directory and/or to move a subtree of entries
to a new location in the Directory.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.forgerock.opendj.ldap.messages.Request
Request.RequestType
-
Method Summary
Modifier and TypeMethodDescription<R,
P, E extends Exception>
Raccept
(RequestVisitor<R, P, E> v, P p) Applies aRequestVisitor
to thisRequest
.final ModifyDnRequest
addControl
(Control control) Adds the provided control to this protocol-op.final ModifyDnRequest
addControls
(Iterable<? extends Control> controls) Adds the provided controls to this protocol-op.final boolean
containsControl
(String oid) Returnstrue
if this protocol-op contains the specified control.final <C extends Control>
CgetControl
(ControlDecoder<C> decoder, DecodeOptions options) Decodes and returns the first control in this protocol-op having an OID corresponding to the provided control decoder.Returns aList
containing the controls included with this protocol-op.getName()
Returns the distinguished name of the entry to be renamed.Returns the new RDN of the entry to be renamed.Returns the distinguished name of an existing entry that will become the immediate superior (parent) of the entry to be renamed.getType()
Returns the type of this request to avoid expensiveinstanceof
checks.boolean
Indicates whether the old RDN attribute values are to be retained as attributes of the entry or deleted from the entry.final ModifyDnRequest
removeControls
(String oid) Removes all the controls having the specified OID.setDeleteOldRdn
(boolean deleteOldRdn) Specifies whether the old RDN attribute values are to be retained as attributes of the entry or deleted from the entry.Sets the distinguished name of the entry to be renamed.Sets the distinguished name of the entry to be renamed.Sets the new RDN of the entry to be renamed.Sets the new RDN of the entry to be renamed.setNewSuperior
(String dn) Sets the distinguished name of an existing entry that will become the immediate superior (parent) of the entry to be renamed.setNewSuperior
(Dn dn) Sets the distinguished name of an existing entry that will become the immediate superior (parent) of the entry to be renamed.toString()
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.forgerock.opendj.ldif.ChangeRecord
addControl, addControls
Methods inherited from interface org.forgerock.opendj.ldap.messages.ProtocolOp
containsControl, getControl, getControl, getControls
Methods inherited from interface org.forgerock.opendj.ldap.messages.Request
removeControls
-
Method Details
-
accept
Description copied from interface:Request
Applies aRequestVisitor
to thisRequest
.- Specified by:
accept
in interfaceRequest
- Type Parameters:
R
- The return type of the visitor's methods.P
- The type of the additional parameters to the visitor's methods.E
- The type of the exception thrown by the visitor method if it fails, orNeverThrowsException
if the visitor cannot fail.- Parameters:
v
- The request visitor.p
- Optional additional visitor parameter.- Returns:
- A result as specified by the visitor.
- Throws:
E
- If the visitor failed.
-
getName
Returns the distinguished name of the entry to be renamed. This entry may or may not have subordinate entries. The server shall not dereference any aliases in locating the entry to be renamed.- Specified by:
getName
in interfaceChangeRecord
- Returns:
- The distinguished name of the entry.
-
getNewRdn
Returns the new RDN of the entry to be renamed. The value of the old RDN is supplied when moving the entry to a new superior without changing its RDN. Attribute values of the new RDN not matching any attribute value of the entry are added to the entry, and an appropriate error is returned if this fails.- Returns:
- The new RDN of the entry.
-
getNewSuperior
Returns the distinguished name of an existing entry that will become the immediate superior (parent) of the entry to be renamed. The server shall not dereference any aliases in locating the new superior entry. The default value isnull
, indicating that the entry is to remain under the same parent entry.- Returns:
- The distinguished name of the new superior entry, or
null
if the entry is to remain under the same parent entry.
-
isDeleteOldRdn
public boolean isDeleteOldRdn()Indicates whether the old RDN attribute values are to be retained as attributes of the entry or deleted from the entry. The default value isfalse
.- Returns:
true
if the old RDN attribute values are to be deleted from the entry, orfalse
if they are to be retained.
-
setDeleteOldRdn
Specifies whether the old RDN attribute values are to be retained as attributes of the entry or deleted from the entry. The default value isfalse
.- Parameters:
deleteOldRdn
-true
if the old RDN attribute values are to be deleted from the entry, orfalse
if they are to be retained.- Returns:
- This modify DN request.
- Throws:
UnsupportedOperationException
- If this modify DN request does not permit the delete old RDN parameter to be set.
-
setName
Sets the distinguished name of the entry to be renamed. This entry may or may not have subordinate entries. The server shall not dereference any aliases in locating the entry to be renamed.- Specified by:
setName
in interfaceChangeRecord
- Parameters:
dn
- The distinguished name of the entry to be renamed.- Returns:
- This modify DN request.
- Throws:
UnsupportedOperationException
- If this modify DN request does not permit the distinguished name to be set.NullPointerException
- Ifdn
wasnull
.
-
setName
Sets the distinguished name of the entry to be renamed. This entry may or may not have subordinate entries. The server shall not dereference any aliases in locating the entry to be renamed.- Specified by:
setName
in interfaceChangeRecord
- Parameters:
dn
- The distinguished name of the entry to be renamed.- Returns:
- This modify DN request.
- Throws:
LocalizedIllegalArgumentException
- Ifdn
could not be decoded using the default schema.UnsupportedOperationException
- If this modify DN request does not permit the distinguished name to be set.NullPointerException
- Ifdn
wasnull
.
-
setNewRdn
Sets the new RDN of the entry to be renamed. The value of the old RDN is supplied when moving the entry to a new superior without changing its RDN. Attribute values of the new RDN not matching any attribute value of the entry are added to the entry, and an appropriate error is returned if this fails.- Parameters:
rdn
- The new RDN of the entry to be renamed.- Returns:
- This modify DN request.
- Throws:
UnsupportedOperationException
- If this modify DN request does not permit the new RDN to be set.NullPointerException
- Ifrdn
wasnull
.
-
setNewRdn
Sets the new RDN of the entry to be renamed. The value of the old RDN is supplied when moving the entry to a new superior without changing its RDN. Attribute values of the new RDN not matching any attribute value of the entry are added to the entry, and an appropriate error is returned if this fails.- Parameters:
rdn
- The new RDN of the entry to be renamed.- Returns:
- This modify DN request.
- Throws:
LocalizedIllegalArgumentException
- Ifrdn
could not be decoded using the default schema.UnsupportedOperationException
- If this modify DN request does not permit the new RDN to be set.NullPointerException
- Ifrdn
wasnull
.
-
setNewSuperior
Sets the distinguished name of an existing entry that will become the immediate superior (parent) of the entry to be renamed. The server shall not dereference any aliases in locating the new superior entry. The default value isnull
, indicating that the entry is to remain under the same parent entry.- Parameters:
dn
- The distinguished name of an existing entry that will become the immediate superior (parent) of the entry to be renamed, may benull
.- Returns:
- This modify DN request.
- Throws:
UnsupportedOperationException
- If this modify DN request does not permit the new superior to be set.
-
setNewSuperior
Sets the distinguished name of an existing entry that will become the immediate superior (parent) of the entry to be renamed. The server shall not dereference any aliases in locating the new superior entry. The default value isnull
, indicating that the entry is to remain under the same parent entry.- Parameters:
dn
- The distinguished name of an existing entry that will become the immediate superior (parent) of the entry to be renamed, may benull
.- Returns:
- This modify DN request.
- Throws:
LocalizedIllegalArgumentException
- Ifdn
could not be decoded using the default schema.UnsupportedOperationException
- If this modify DN request does not permit the new superior to be set.
-
getType
Description copied from interface:Request
Returns the type of this request to avoid expensiveinstanceof
checks. -
toString
-
addControl
Description copied from interface:ProtocolOp
Adds the provided control to this protocol-op.- Specified by:
addControl
in interfaceProtocolOp
- Parameters:
control
- The control to be added to this protocol-op.- Returns:
- This protocol-op.
-
addControls
Description copied from interface:ProtocolOp
Adds the provided controls to this protocol-op.- Specified by:
addControls
in interfaceProtocolOp
- Parameters:
controls
- The controls to be added to this protocol-op.- Returns:
- This protocol-op.
-
removeControls
Description copied from interface:ProtocolOp
Removes all the controls having the specified OID.- Specified by:
removeControls
in interfaceProtocolOp
- Parameters:
oid
- The numeric OID of the protocol-op control to remove.- Returns:
- This protocol-op.
-
containsControl
Description copied from interface:ProtocolOp
Returnstrue
if this protocol-op contains the specified control.- Specified by:
containsControl
in interfaceProtocolOp
- Parameters:
oid
- The numeric OID of the protocol-op control.- Returns:
true
if this protocol-op contains the specified control.
-
getControl
public final <C extends Control> C getControl(ControlDecoder<C> decoder, DecodeOptions options) throws DecodeException Description copied from interface:ProtocolOp
Decodes and returns the first control in this protocol-op having an OID corresponding to the provided control decoder.- Specified by:
getControl
in interfaceProtocolOp
- Type Parameters:
C
- The type of control to be decoded and returned.- Parameters:
decoder
- The control decoder.options
- The set of decode options which should be used when decoding the control.- Returns:
- The decoded control, or
null
if the control is not included with this protocol-op. - Throws:
DecodeException
- If the control could not be decoded because it was malformed in some way (e.g. the control value was missing, or its content could not be decoded).
-
getControls
Description copied from interface:ProtocolOp
Returns aList
containing the controls included with this protocol-op. The returnedList
may be modified if permitted by this protocol-op.- Specified by:
getControls
in interfaceProtocolOp
- Returns:
- A
List
containing the controls.
-