Class ModifyRequest
java.lang.Object
org.forgerock.opendj.ldap.messages.ModifyRequest
- All Implemented Interfaces:
ProtocolOp
,Request
,ChangeRecord
The Modify operation allows a client to request that a modification of an
entry be performed on its behalf by a server.
The following example adds a member to a static group entry.
Connection connection = ...; String groupDN = ...; String memberDN = ...; ModifyRequest addMember = Requests.newModifyRequest(groupDN) .addModification(ModificationType.ADD, "member", memberDN); connection.modify(addMember);
-
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 ModifyRequest
addControl
(Control control) Adds the provided control to this protocol-op.final ModifyRequest
addControls
(Iterable<? extends Control> controls) Adds the provided controls to this protocol-op.addModification
(Modification modification) Appends the provided modification to the list of modifications included with this modify request.addModification
(ModificationType type, String attributeDescription, Object... values) Appends the provided modification to the list of modifications included with this modify request.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.Returns aList
containing the modifications included with this modify request.getName()
Returns the distinguished name of the entry to be modified.getType()
Returns the type of this request to avoid expensiveinstanceof
checks.final ModifyRequest
removeControls
(String oid) Removes all the controls having the specified OID.Sets the distinguished name of the entry to be modified.Sets the distinguished name of the entry to be modified.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.
-
addModification
Appends the provided modification to the list of modifications included with this modify request.- Parameters:
modification
- The modification to be performed.- Returns:
- This modify request.
- Throws:
UnsupportedOperationException
- If this modify request does not permit modifications to be added.NullPointerException
- Ifmodification
wasnull
.
-
addModification
public ModifyRequest addModification(ModificationType type, String attributeDescription, Object... values) Appends the provided modification to the list of modifications included with this modify request.If the attribute value is not an instance of
ByteString
then it will be converted using theByteString.valueOfObject(Object)
method.- Parameters:
type
- The type of modification to be performed.attributeDescription
- The name of the attribute to be modified.values
- The attribute values to be modified.- Returns:
- This modify request.
- Throws:
LocalizedIllegalArgumentException
- IfattributeDescription
could not be decoded using the default schema.UnsupportedOperationException
- If this modify request does not permit modifications to be added.NullPointerException
- Iftype
,attributeDescription
, orvalue
wasnull
.
-
getModifications
Returns aList
containing the modifications included with this modify request. The returnedList
may be modified if permitted by this modify request.- Returns:
- A
List
containing the modifications.
-
getName
Returns the distinguished name of the entry to be modified. The server shall not perform any alias dereferencing in determining the object to be modified.- Specified by:
getName
in interfaceChangeRecord
- Returns:
- The distinguished name of the entry to be modified.
-
setName
Sets the distinguished name of the entry to be modified. The server shall not perform any alias dereferencing in determining the object to be modified.- Specified by:
setName
in interfaceChangeRecord
- Parameters:
dn
- The the distinguished name of the entry to be modified.- Returns:
- This modify request.
- Throws:
UnsupportedOperationException
- If this modify request does not permit the distinguished name to be set.NullPointerException
- Ifdn
wasnull
.
-
setName
Sets the distinguished name of the entry to be modified. The server shall not perform any alias dereferencing in determining the object to be modified.- Specified by:
setName
in interfaceChangeRecord
- Parameters:
dn
- The the distinguished name of the entry to be modified.- Returns:
- This modify request.
- Throws:
LocalizedIllegalArgumentException
- Ifdn
could not be decoded using the default schema.UnsupportedOperationException
- If this modify request does not permit the distinguished name to be set.NullPointerException
- Ifdn
wasnull
.
-
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.
-