org.apache.tools.ant.taskdefs

Class DependSet

Implemented Interfaces:
Cloneable, SelectorContainer

public class DependSet
extends MatchingTask

Examines and removes out of date target files. If any of the target files are out of date with respect to any of the source files, all target files are removed. This is useful where dependencies cannot be computed (for example, dynamically interpreted parameters or files that need to stay in synch but are not directly linked) or where the ant task in question could compute them but does not (for example, the linked DTD for an XML file using the XSLT task). nested arguments: At least one of both source and target entities is required.

This task will examine each of the sources against each of the target files. If any target files are out of date with respect to any of the sources, all targets are removed. If any sources or targets do not exist, all targets are removed. Hint: If missing files should be ignored, specify them as include patterns in filesets, rather than using filelists.

This task attempts to optimize speed of dependency checking by comparing only the dates of the oldest target file and the newest source.

Example uses:

Since:
Ant 1.4

Field Summary

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

Method Summary

void
addSrcfilelist(FileList fl)
Add a list of source files.
void
addSrcfileset(FileSet fs)
Add a set of source files.
void
addTargetfilelist(FileList fl)
Add a list of target files.
void
addTargetfileset(FileSet fs)
Add a set of target files.
Union
createSources()
Create a nested sources element.
Path
createTargets()
Create a nested targets element.
void
execute()
Execute the task.

Methods inherited from class org.apache.tools.ant.taskdefs.MatchingTask

XsetIgnore, XsetItems, add, addAnd, addContains, addContainsRegexp, addCustom, addDate, addDepend, addDepth, addDifferent, addFilename, addMajority, addModified, addNone, addNot, addOr, addPresent, addSelector, addSize, addType, appendSelector, createExclude, createExcludesFile, createInclude, createIncludesFile, createPatternSet, getDirectoryScanner, getImplicitFileSet, getSelectors, hasSelectors, selectorCount, selectorElements, setCaseSensitive, setDefaultexcludes, setExcludes, setExcludesfile, setFollowSymlinks, setIncludes, setIncludesfile, setProject

Methods inherited from class org.apache.tools.ant.Task

bindToOwner, execute, 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, log, log, setDescription, setLocation, setProject

Method Details

addSrcfilelist

public void addSrcfilelist(FileList fl)
Add a list of source files.
Parameters:
fl - the FileList to add.

addSrcfileset

public void addSrcfileset(FileSet fs)
Add a set of source files.
Parameters:
fs - the FileSet to add.

addTargetfilelist

public void addTargetfilelist(FileList fl)
Add a list of target files.
Parameters:
fl - the FileList to add.

addTargetfileset

public void addTargetfileset(FileSet fs)
Add a set of target files.
Parameters:
fs - the FileSet to add.

createSources

public Union createSources()
Create a nested sources element.
Returns:
a Union instance.

createTargets

public Path createTargets()
Create a nested targets element.
Returns:
a Union instance.

execute

public void execute()
            throws BuildException
Execute the task.
Overrides:
execute in interface Task
Throws:
BuildException - if errors occur.