Package org.apache.tools.ant.taskdefs
Class Delete
java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.MatchingTask
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
Fields Modifier and Type Field Description protected java.io.File
dir
protected java.io.File
file
protected java.util.Vector<FileSet>
filesets
protected boolean
includeEmpty
protected boolean
usedMatchingTask
-
Constructor Summary
Constructors Constructor Description Delete()
-
Method Summary
Modifier and Type Method Description void
add(ResourceCollection rc)
Add an arbitrary ResourceCollection to be deleted.void
add(FileSelector selector)
add an arbitrary selectorvoid
addAnd(AndSelector selector)
add an "And" selector entry on the selector listvoid
addContains(ContainsSelector selector)
add a contains selector entry on the selector listvoid
addContainsRegexp(ContainsRegexpSelector selector)
add a regular expression selector entry on the selector listvoid
addCustom(ExtendSelector selector)
add an extended selector entry on the selector listvoid
addDate(DateSelector selector)
add a selector date entry on the selector listvoid
addDepend(DependSelector selector)
add a depends selector entry on the selector listvoid
addDepth(DepthSelector selector)
add a depth selector entry on the selector listvoid
addFilename(FilenameSelector selector)
add a selector filename entry on the selector listvoid
addFileset(FileSet set)
Adds a set of files to be deleted.void
addMajority(MajoritySelector selector)
add a majority selector entry on the selector listvoid
addModified(ModifiedSelector selector)
add the modified selectorvoid
addNone(NoneSelector selector)
add a "None" selector entry on the selector listvoid
addNot(NotSelector selector)
add a "Not" selector entry on the selector listvoid
addOr(OrSelector selector)
add an "Or" selector entry on the selector listvoid
addPresent(PresentSelector selector)
add a present selector entry on the selector listvoid
addSelector(SelectSelector selector)
add a "Select" selector entry on the selector listvoid
addSize(SizeSelector selector)
add a selector size entry on the selector listPatternSet.NameEntry
createExclude()
add a name entry on the exclude listPatternSet.NameEntry
createExcludesFile()
add a name entry on the include files listPatternSet.NameEntry
createInclude()
add a name entry on the include listPatternSet.NameEntry
createIncludesFile()
add a name entry on the include files listPatternSet
createPatternSet()
add a set of patternsvoid
execute()
Delete the file(s).protected void
removeDir(java.io.File d)
Delete a directoryprotected 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 truevoid
setCaseSensitive(boolean isCaseSensitive)
Sets case sensitivity of the file systemvoid
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 continuevoid
setDir(java.io.File dir)
Set the directory from which files are to be deletedvoid
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
setPerformGcOnFailedDelete(boolean b)
Whether to perform a garbage collection before retrying a failed delete.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
setRemoveNotFollowedSymlinks(boolean b)
Sets whether the symbolic links that have not been followed shall be removed (the links, not the locations they point at).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
-
Field Details
-
file
protected java.io.File file -
dir
protected java.io.File dir -
filesets
-
usedMatchingTask
protected boolean usedMatchingTask -
includeEmpty
protected boolean includeEmpty
-
-
Constructor Details
-
Delete
public Delete()
-
-
Method Details
-
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.
-
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
Adds a set of files to be deleted.- Parameters:
set
- the set of files to be deleted
-
add
Add an arbitrary ResourceCollection to be deleted.- Parameters:
rc
- the filesystem-only ResourceCollection.
-
createInclude
add a name entry on the include list- Overrides:
createInclude
in classMatchingTask
- Returns:
- a NameEntry object to be configured
-
createIncludesFile
add a name entry on the include files list- Overrides:
createIncludesFile
in classMatchingTask
- Returns:
- a PatternFileNameEntry object to be configured
-
createExclude
add a name entry on the exclude list- Overrides:
createExclude
in classMatchingTask
- Returns:
- a NameEntry object to be configured
-
createExcludesFile
add a name entry on the include files list- Overrides:
createExcludesFile
in classMatchingTask
- Returns:
- a PatternFileNameEntry object to be configured
-
createPatternSet
add a set of patterns- Overrides:
createPatternSet
in classMatchingTask
- 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 classMatchingTask
- 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 classMatchingTask
- 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 classMatchingTask
- 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 classMatchingTask
- 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 classMatchingTask
- 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 classMatchingTask
- 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 classMatchingTask
- 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
add a "Select" selector entry on the selector list- Specified by:
addSelector
in interfaceSelectorContainer
- Overrides:
addSelector
in classMatchingTask
- Parameters:
selector
- the selector to be added
-
addAnd
add an "And" selector entry on the selector list- Specified by:
addAnd
in interfaceSelectorContainer
- Overrides:
addAnd
in classMatchingTask
- Parameters:
selector
- the selector to be added
-
addOr
add an "Or" selector entry on the selector list- Specified by:
addOr
in interfaceSelectorContainer
- Overrides:
addOr
in classMatchingTask
- Parameters:
selector
- the selector to be added
-
addNot
add a "Not" selector entry on the selector list- Specified by:
addNot
in interfaceSelectorContainer
- Overrides:
addNot
in classMatchingTask
- Parameters:
selector
- the selector to be added
-
addNone
add a "None" selector entry on the selector list- Specified by:
addNone
in interfaceSelectorContainer
- Overrides:
addNone
in classMatchingTask
- Parameters:
selector
- the selector to be added
-
addMajority
add a majority selector entry on the selector list- Specified by:
addMajority
in interfaceSelectorContainer
- Overrides:
addMajority
in classMatchingTask
- Parameters:
selector
- the selector to be added
-
addDate
add a selector date entry on the selector list- Specified by:
addDate
in interfaceSelectorContainer
- Overrides:
addDate
in classMatchingTask
- Parameters:
selector
- the selector to be added
-
addSize
add a selector size entry on the selector list- Specified by:
addSize
in interfaceSelectorContainer
- Overrides:
addSize
in classMatchingTask
- Parameters:
selector
- the selector to be added
-
addFilename
add a selector filename entry on the selector list- Specified by:
addFilename
in interfaceSelectorContainer
- Overrides:
addFilename
in classMatchingTask
- Parameters:
selector
- the selector to be added
-
addCustom
add an extended selector entry on the selector list- Specified by:
addCustom
in interfaceSelectorContainer
- Overrides:
addCustom
in classMatchingTask
- Parameters:
selector
- the selector to be added
-
addContains
add a contains selector entry on the selector list- Specified by:
addContains
in interfaceSelectorContainer
- Overrides:
addContains
in classMatchingTask
- Parameters:
selector
- the selector to be added
-
addPresent
add a present selector entry on the selector list- Specified by:
addPresent
in interfaceSelectorContainer
- Overrides:
addPresent
in classMatchingTask
- Parameters:
selector
- the selector to be added
-
addDepth
add a depth selector entry on the selector list- Specified by:
addDepth
in interfaceSelectorContainer
- Overrides:
addDepth
in classMatchingTask
- Parameters:
selector
- the selector to be added
-
addDepend
add a depends selector entry on the selector list- Specified by:
addDepend
in interfaceSelectorContainer
- Overrides:
addDepend
in classMatchingTask
- Parameters:
selector
- the selector to be added
-
addContainsRegexp
add a regular expression selector entry on the selector list- Specified by:
addContainsRegexp
in interfaceSelectorContainer
- Overrides:
addContainsRegexp
in classMatchingTask
- Parameters:
selector
- the selector to be added
-
addModified
add the modified selector- Specified by:
addModified
in interfaceSelectorContainer
- Overrides:
addModified
in classMatchingTask
- Parameters:
selector
- the selector to add- Since:
- ant 1.6
-
add
add an arbitrary selector- Specified by:
add
in interfaceSelectorContainer
- Overrides:
add
in classMatchingTask
- Parameters:
selector
- the selector to be added- Since:
- Ant 1.6
-
execute
Delete the file(s).- Overrides:
execute
in classTask
- 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 fromfiles
- array of files to delete; can be of zero lengthdirs
- array of directories to delete; can of zero length
-