org.apache.tools.ant.taskdefs
Class Delete

java.lang.Object
  extended by org.apache.tools.ant.ProjectComponent
      extended by org.apache.tools.ant.Task
          extended by org.apache.tools.ant.taskdefs.MatchingTask
              extended by org.apache.tools.ant.taskdefs.Delete
All Implemented Interfaces:
java.lang.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 Summary
protected  java.io.File dir
           
protected  java.io.File file
           
protected  java.util.Vector filesets
           
protected  boolean includeEmpty
           
protected  boolean usedMatchingTask
           
 
Fields inherited from class org.apache.tools.ant.taskdefs.MatchingTask
fileset
 
Fields inherited from class org.apache.tools.ant.Task
target, taskName, taskType, wrapper
 
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
 
Constructor Summary
Delete()
           
 
Method Summary
 void add(FileSelector selector)
          add an arbitrary selector
 void add(ResourceCollection rc)
          Add an arbitrary ResourceCollection to be deleted.
 void addAnd(AndSelector selector)
          add an "And" selector entry on the selector list
 void addContains(ContainsSelector selector)
          add a contains selector entry on the selector list
 void addContainsRegexp(ContainsRegexpSelector selector)
          add a regular expression selector entry on the selector list
 void addCustom(ExtendSelector selector)
          add an extended selector entry on the selector list
 void addDate(DateSelector selector)
          add a selector date entry on the selector list
 void addDepend(DependSelector selector)
          add a depends selector entry on the selector list
 void addDepth(DepthSelector selector)
          add a depth selector entry on the selector list
 void addFilename(FilenameSelector selector)
          add a selector filename entry on the selector list
 void addFileset(FileSet set)
          Adds a set of files to be deleted.
 void addMajority(MajoritySelector selector)
          add a majority selector entry on the selector list
 void addModified(ModifiedSelector selector)
          add the modified selector
 void addNone(NoneSelector selector)
          add a "None" selector entry on the selector list
 void addNot(NotSelector selector)
          add a "Not" selector entry on the selector list
 void addOr(OrSelector selector)
          add an "Or" selector entry on the selector list
 void addPresent(PresentSelector selector)
          add a present selector entry on the selector list
 void addSelector(SelectSelector selector)
          add a "Select" selector entry on the selector list
 void addSize(SizeSelector selector)
          add a selector size entry on the selector list
 PatternSet.NameEntry createExclude()
          add a name entry on the exclude list
 PatternSet.NameEntry createExcludesFile()
          add a name entry on the include files list
 PatternSet.NameEntry createInclude()
          add a name entry on the include list
 PatternSet.NameEntry createIncludesFile()
          add a name entry on the include files list
 PatternSet createPatternSet()
          add a set of patterns
 void execute()
          Delete the file(s).
protected  void removeDir(java.io.File d)
          Delete a directory
protected  void removeFiles(java.io.File d, java.lang.String[] files, java.lang.String[] dirs)
          remove an array of files in a directory, and a list of subdirectories which will only be deleted if 'includeEmpty' is true
 void setCaseSensitive(boolean isCaseSensitive)
          Sets case sensitivity of the file system
 void setDefaultexcludes(boolean useDefaultExcludes)
          Sets whether default exclusions should be used or not.
 void setDeleteOnExit(boolean deleteOnExit)
          If true, on failure to delete, note the error and set the deleteonexit flag, and continue
 void setDir(java.io.File dir)
          Set the directory from which files are to be deleted
 void setExcludes(java.lang.String excludes)
          Sets the set of exclude patterns.
 void setExcludesfile(java.io.File excludesfile)
          Sets the name of the file containing the includes patterns.
 void setFailOnError(boolean failonerror)
          If false, note errors but continue.
 void setFile(java.io.File file)
          Set the name of a single file to be removed.
 void setFollowSymlinks(boolean followSymlinks)
          Sets whether or not symbolic links should be followed.
 void setIncludeEmptyDirs(boolean includeEmpty)
          If true, delete empty directories.
 void setIncludes(java.lang.String includes)
          Sets the set of include patterns.
 void setIncludesfile(java.io.File includesfile)
          Sets the name of the file containing the includes patterns.
 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.
 void setVerbose(boolean verbose)
          If true, list all names of deleted files.
 
Methods inherited from class org.apache.tools.ant.taskdefs.MatchingTask
addDifferent, addType, appendSelector, getDirectoryScanner, getImplicitFileSet, getSelectors, hasSelectors, selectorCount, selectorElements, setProject, XsetIgnore, XsetItems
 
Methods inherited from class org.apache.tools.ant.Task
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
 
Methods inherited from class org.apache.tools.ant.ProjectComponent
clone, getDescription, getLocation, getProject, setDescription, setLocation
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

file

protected java.io.File file

dir

protected java.io.File dir

filesets

protected java.util.Vector filesets

usedMatchingTask

protected boolean usedMatchingTask

includeEmpty

protected boolean includeEmpty
Constructor Detail

Delete

public Delete()
Method Detail

setFile

public void setFile(java.io.File file)
Set the name of a single file to be removed.

Parameters:
file - the file to be deleted

setDir

public void setDir(java.io.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.

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:
an NameEntry object to be configured

createExclude

public PatternSet.NameEntry createExclude()
add a name entry on the exclude list

Overrides:
createExclude in class MatchingTask
Returns:
an 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:
an NameEntry 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(java.lang.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(java.lang.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(java.io.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(java.io.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

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(java.io.File d)
Delete a directory

Parameters:
d - the directory to delete

removeFiles

protected void removeFiles(java.io.File d,
                           java.lang.String[] files,
                           java.lang.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