Interface DeleteRequest

All Superinterfaces:
ChangeRecord, Request

public interface DeleteRequest extends Request, ChangeRecord
The Delete operation allows a client to request the removal of an entry from the Directory.

Only leaf entries (those with no subordinate entries) can be deleted with this operation. However, addition of the SubtreeDeleteControl permits whole sub-trees to be deleted using a single Delete request.

 Connection connection = ...;
 String baseDN = ...;

 DeleteRequest request =
         Requests.newDeleteRequest(baseDN)
             .addControl(SubtreeDeleteRequestControl.newControl(true));
 connection.delete(request);
 
  • Method Details

    • accept

      <R, P> R accept(ChangeRecordVisitor<R,P> v, P p)
      Description copied from interface: ChangeRecord
      Applies a ChangeRecordVisitor to this ChangeRecord.
      Specified by:
      accept in interface ChangeRecord
      Type Parameters:
      R - The return type of the visitor's methods.
      P - The type of the additional parameters to the visitor's methods.
      Parameters:
      v - The change record visitor.
      p - Optional additional visitor parameter.
      Returns:
      A result as specified by the visitor.
    • addControl

      Description copied from interface: Request
      Adds the provided control to this request.
      Specified by:
      addControl in interface Request
      Parameters:
      control - The control to be added to this request.
      Returns:
      This request.
    • getControl

      <C extends Control> C getControl(ControlDecoder<C> decoder, DecodeOptions options) throws DecodeException
      Description copied from interface: Request
      Decodes and returns the first control in this request having an OID corresponding to the provided control decoder.
      Specified by:
      getControl in interface Request
      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 request.
      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: Request
      Returns a List containing the controls included with this request. The returned List may be modified if permitted by this request.
      Specified by:
      getControls in interface Request
      Returns:
      A List containing the controls.
    • getName

      Returns the distinguished name of the entry to be deleted. The server shall not dereference any aliases in locating the entry to be deleted.
      Specified by:
      getName in interface ChangeRecord
      Returns:
      The distinguished name of the entry.
    • setName

      Sets the distinguished name of the entry to be deleted. The server shall not dereference any aliases in locating the entry to be deleted.
      Parameters:
      dn - The distinguished name of the entry to be deleted.
      Returns:
      This delete request.
      Throws:
      UnsupportedOperationException - If this delete request does not permit the distinguished name to be set.
      NullPointerException - If dn was null.
    • setName

      Sets the distinguished name of the entry to be deleted. The server shall not dereference any aliases in locating the entry to be deleted.
      Parameters:
      dn - The distinguished name of the entry to be deleted.
      Returns:
      This delete request.
      Throws:
      org.forgerock.i18n.LocalizedIllegalArgumentException - If dn could not be decoded using the default schema.
      UnsupportedOperationException - If this delete request does not permit the distinguished name to be set.
      NullPointerException - If dn was null.