Interface ModifyRequest

  • All Superinterfaces:
    ChangeRecord, ProtocolOp, Request

    public interface ModifyRequest
    extends 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);
     
    • Method Detail

      • addModification

        ModifyRequest addModification​(Modification modification)
        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 - If modification was null.
      • addModification

        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 the ByteString.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 - If attributeDescription could not be decoded using the default schema.
        UnsupportedOperationException - If this modify request does not permit modifications to be added.
        NullPointerException - If type, attributeDescription, or value was null.
      • getControl

        <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 interface ProtocolOp
        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

        List<Control> getControls()
        Description copied from interface: ProtocolOp
        Returns a List containing the controls included with this protocol-op. The returned List may be modified if permitted by this protocol-op.
        Specified by:
        getControls in interface ProtocolOp
        Returns:
        A List containing the controls.
      • getModifications

        List<Modification> getModifications()
        Returns a List containing the modifications included with this modify request. The returned List may be modified if permitted by this modify request.
        Returns:
        A List containing the modifications.
      • getName

        Dn 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 interface ChangeRecord
        Returns:
        The distinguished name of the entry to be modified.
      • setName

        ModifyRequest setName​(Dn dn)
        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 interface ChangeRecord
        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 - If dn was null.