Class Delete

All Implemented Interfaces:
Cloneable, SelectorContainer

public class Delete extends MatchingTask
Deletes a file or directory, or set of files defined by a fileset. The original delete task would delete a file, or a set of files using the include/exclude syntax. The deltree task would delete a directory tree. This task combines the functionality of these two originally distinct tasks.

Currently Delete extends MatchingTask. This is intended only to provide backwards compatibility for a release. The future position is to use nested filesets exclusively.

Since:
Ant 1.2
  • Field Details

    • file

      protected File file
    • dir

      protected File dir
    • filesets

      protected Vector<FileSet> filesets
    • usedMatchingTask

      protected boolean usedMatchingTask
    • includeEmpty

      protected boolean includeEmpty
  • Constructor Details

    • Delete

      public Delete()
  • Method Details

    • setFile

      public void setFile(File file)
      Set the name of a single file to be removed.
      Parameters:
      file - the file to be deleted
    • setDir

      public void setDir(File dir)
      Set the directory from which files are to be deleted
      Parameters:
      dir - the directory path.
    • setVerbose

      public void setVerbose(boolean verbose)
      If true, list all names of deleted files.
      Parameters:
      verbose - "true" or "on"
    • setQuiet

      public void setQuiet(boolean quiet)
      If true and the file does not exist, do not display a diagnostic message or modify the exit status to reflect an error. This means that if a file or directory cannot be deleted, then no error is reported. This setting emulates the -f option to the Unix "rm" command. Default is false meaning things are "noisy"
      Parameters:
      quiet - "true" or "on"
    • setFailOnError

      public void setFailOnError(boolean failonerror)
      If false, note errors but continue.
      Parameters:
      failonerror - true or false
    • setDeleteOnExit

      public void setDeleteOnExit(boolean deleteOnExit)
      If true, on failure to delete, note the error and set the deleteonexit flag, and continue
      Parameters:
      deleteOnExit - true or false
    • setIncludeEmptyDirs

      public void setIncludeEmptyDirs(boolean includeEmpty)
      If true, delete empty directories.
      Parameters:
      includeEmpty - if true delete empty directories (only for filesets). Default is false.
    • setPerformGcOnFailedDelete

      public void setPerformGcOnFailedDelete(boolean b)
      Whether to perform a garbage collection before retrying a failed delete.

      This may be required on Windows (where it is set to true by default) but also on other operating systems, for example when deleting directories from an NFS share.

      Parameters:
      b - boolean
      Since:
      Ant 1.8.3
    • addFileset

      public void addFileset(FileSet set)
      Adds a set of files to be deleted.
      Parameters:
      set - the set of files to be deleted
    • add

      public void add(ResourceCollection rc)
      Add an arbitrary ResourceCollection to be deleted.
      Parameters:
      rc - the filesystem-only ResourceCollection.
    • createInclude

      public PatternSet.NameEntry createInclude()
      add a name entry on the include list
      Overrides:
      createInclude in class MatchingTask
      Returns:
      a NameEntry object to be configured
    • createIncludesFile

      public PatternSet.NameEntry createIncludesFile()
      add a name entry on the include files list
      Overrides:
      createIncludesFile in class MatchingTask
      Returns:
      a PatternFileNameEntry object to be configured
    • createExclude

      public PatternSet.NameEntry createExclude()
      add a name entry on the exclude list
      Overrides:
      createExclude in class MatchingTask
      Returns:
      a NameEntry object to be configured
    • createExcludesFile

      public PatternSet.NameEntry createExcludesFile()
      add a name entry on the include files list
      Overrides:
      createExcludesFile in class MatchingTask
      Returns:
      a PatternFileNameEntry object to be configured
    • createPatternSet

      public PatternSet createPatternSet()
      add a set of patterns
      Overrides:
      createPatternSet in class MatchingTask
      Returns:
      PatternSet object to be configured
    • setIncludes

      public void setIncludes(String includes)
      Sets the set of include patterns. Patterns may be separated by a comma or a space.
      Overrides:
      setIncludes in class MatchingTask
      Parameters:
      includes - the string containing the include patterns
    • setExcludes

      public void setExcludes(String excludes)
      Sets the set of exclude patterns. Patterns may be separated by a comma or a space.
      Overrides:
      setExcludes in class MatchingTask
      Parameters:
      excludes - the string containing the exclude patterns
    • setDefaultexcludes

      public void setDefaultexcludes(boolean useDefaultExcludes)
      Sets whether default exclusions should be used or not.
      Overrides:
      setDefaultexcludes in class MatchingTask
      Parameters:
      useDefaultExcludes - "true"|"on"|"yes" when default exclusions should be used, "false"|"off"|"no" when they shouldn't be used.
    • setIncludesfile

      public void setIncludesfile(File includesfile)
      Sets the name of the file containing the includes patterns.
      Overrides:
      setIncludesfile in class MatchingTask
      Parameters:
      includesfile - A string containing the filename to fetch the include patterns from.
    • setExcludesfile

      public void setExcludesfile(File excludesfile)
      Sets the name of the file containing the includes patterns.
      Overrides:
      setExcludesfile in class MatchingTask
      Parameters:
      excludesfile - A string containing the filename to fetch the include patterns from.
    • setCaseSensitive

      public void setCaseSensitive(boolean isCaseSensitive)
      Sets case sensitivity of the file system
      Overrides:
      setCaseSensitive in class MatchingTask
      Parameters:
      isCaseSensitive - "true"|"on"|"yes" if file system is case sensitive, "false"|"off"|"no" when not.
    • setFollowSymlinks

      public void setFollowSymlinks(boolean followSymlinks)
      Sets whether or not symbolic links should be followed.
      Overrides:
      setFollowSymlinks in class MatchingTask
      Parameters:
      followSymlinks - whether or not symbolic links should be followed
    • setRemoveNotFollowedSymlinks

      public void setRemoveNotFollowedSymlinks(boolean b)
      Sets whether the symbolic links that have not been followed shall be removed (the links, not the locations they point at).
      Parameters:
      b - boolean
      Since:
      Ant 1.8.0
    • addSelector

      public void addSelector(SelectSelector selector)
      add a "Select" selector entry on the selector list
      Specified by:
      addSelector in interface SelectorContainer
      Overrides:
      addSelector in class MatchingTask
      Parameters:
      selector - the selector to be added
    • addAnd

      public void addAnd(AndSelector selector)
      add an "And" selector entry on the selector list
      Specified by:
      addAnd in interface SelectorContainer
      Overrides:
      addAnd in class MatchingTask
      Parameters:
      selector - the selector to be added
    • addOr

      public void addOr(OrSelector selector)
      add an "Or" selector entry on the selector list
      Specified by:
      addOr in interface SelectorContainer
      Overrides:
      addOr in class MatchingTask
      Parameters:
      selector - the selector to be added
    • addNot

      public void addNot(NotSelector selector)
      add a "Not" selector entry on the selector list
      Specified by:
      addNot in interface SelectorContainer
      Overrides:
      addNot in class MatchingTask
      Parameters:
      selector - the selector to be added
    • addNone

      public void addNone(NoneSelector selector)
      add a "None" selector entry on the selector list
      Specified by:
      addNone in interface SelectorContainer
      Overrides:
      addNone in class MatchingTask
      Parameters:
      selector - the selector to be added
    • addMajority

      public void addMajority(MajoritySelector selector)
      add a majority selector entry on the selector list
      Specified by:
      addMajority in interface SelectorContainer
      Overrides:
      addMajority in class MatchingTask
      Parameters:
      selector - the selector to be added
    • addDate

      public void addDate(DateSelector selector)
      add a selector date entry on the selector list
      Specified by:
      addDate in interface SelectorContainer
      Overrides:
      addDate in class MatchingTask
      Parameters:
      selector - the selector to be added
    • addSize

      public void addSize(SizeSelector selector)
      add a selector size entry on the selector list
      Specified by:
      addSize in interface SelectorContainer
      Overrides:
      addSize in class MatchingTask
      Parameters:
      selector - the selector to be added
    • addFilename

      public void addFilename(FilenameSelector selector)
      add a selector filename entry on the selector list
      Specified by:
      addFilename in interface SelectorContainer
      Overrides:
      addFilename in class MatchingTask
      Parameters:
      selector - the selector to be added
    • addCustom

      public void addCustom(ExtendSelector selector)
      add an extended selector entry on the selector list
      Specified by:
      addCustom in interface SelectorContainer
      Overrides:
      addCustom in class MatchingTask
      Parameters:
      selector - the selector to be added
    • addContains

      public void addContains(ContainsSelector selector)
      add a contains selector entry on the selector list
      Specified by:
      addContains in interface SelectorContainer
      Overrides:
      addContains in class MatchingTask
      Parameters:
      selector - the selector to be added
    • addPresent

      public void addPresent(PresentSelector selector)
      add a present selector entry on the selector list
      Specified by:
      addPresent in interface SelectorContainer
      Overrides:
      addPresent in class MatchingTask
      Parameters:
      selector - the selector to be added
    • addDepth

      public void addDepth(DepthSelector selector)
      add a depth selector entry on the selector list
      Specified by:
      addDepth in interface SelectorContainer
      Overrides:
      addDepth in class MatchingTask
      Parameters:
      selector - the selector to be added
    • addDepend

      public void addDepend(DependSelector selector)
      add a depends selector entry on the selector list
      Specified by:
      addDepend in interface SelectorContainer
      Overrides:
      addDepend in class MatchingTask
      Parameters:
      selector - the selector to be added
    • addContainsRegexp

      public void addContainsRegexp(ContainsRegexpSelector selector)
      add a regular expression selector entry on the selector list
      Specified by:
      addContainsRegexp in interface SelectorContainer
      Overrides:
      addContainsRegexp in class MatchingTask
      Parameters:
      selector - the selector to be added
    • addModified

      public void addModified(ModifiedSelector selector)
      add the modified selector
      Specified by:
      addModified in interface SelectorContainer
      Overrides:
      addModified in class MatchingTask
      Parameters:
      selector - the selector to add
      Since:
      ant 1.6
    • add

      public void add(FileSelector selector)
      add an arbitrary selector
      Specified by:
      add in interface SelectorContainer
      Overrides:
      add in class MatchingTask
      Parameters:
      selector - the selector to be added
      Since:
      Ant 1.6
    • execute

      public void execute() throws BuildException
      Delete the file(s).
      Overrides:
      execute in class Task
      Throws:
      BuildException - if an error occurs
    • removeDir

      protected void removeDir(File d)
      Delete a directory
      Parameters:
      d - the directory to delete
    • removeFiles

      protected void removeFiles(File d, String[] files, String[] dirs)
      remove an array of files in a directory, and a list of subdirectories which will only be deleted if 'includeEmpty' is true
      Parameters:
      d - directory to work from
      files - array of files to delete; can be of zero length
      dirs - array of directories to delete; can of zero length