Class PresentSelector
java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.types.DataType
org.apache.tools.ant.types.selectors.BaseSelector
org.apache.tools.ant.types.selectors.PresentSelector
- All Implemented Interfaces:
Cloneable
,ResourceSelector
,FileSelector
Selector that filters files based on whether they appear in another
directory tree. It can contain a mapper element, so isn't available
as an ExtendSelector (since those parameters can't hold other
elements).
- Since:
- 1.5
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Enumerated attribute with the values for indicating where a file's presence is allowed and required. -
Field Summary
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addConfigured
(FileNameMapper fileNameMapper) Add a configured FileNameMapper instance.Defines the FileNameMapper to use (nested mapper element).boolean
isSelected
(File basedir, String filename, File file) The heart of the matter.void
This sets whether to select a file if its dest file is present.void
setTargetdir
(File targetdir) The name of the file or directory which is checked for matching files.toString()
Basic DataType toString().void
Checks to make sure all settings are kosher.Methods inherited from class org.apache.tools.ant.types.selectors.BaseSelector
getError, setError, setError, validate
Methods inherited from class org.apache.tools.ant.types.DataType
checkAttributesAllowed, checkChildrenAllowed, circularReference, clone, dieOnCircularReference, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, pushAndInvokeCircularReferenceCheck, setChecked, setRefid, tooManyAttributes
Methods inherited from class org.apache.tools.ant.ProjectComponent
getDescription, getLocation, getProject, log, log, setDescription, setLocation, setProject
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.apache.tools.ant.types.selectors.FileSelector
isSelected
-
Constructor Details
-
PresentSelector
public PresentSelector()
-
-
Method Details
-
toString
-
setTargetdir
The name of the file or directory which is checked for matching files.- Parameters:
targetdir
- the directory to scan looking for matching files.
-
createMapper
Defines the FileNameMapper to use (nested mapper element).- Returns:
- a mapper to be configured
- Throws:
BuildException
- if more than one mapper defined
-
addConfigured
Add a configured FileNameMapper instance.- Parameters:
fileNameMapper
- the FileNameMapper to add- Throws:
BuildException
- if more than one mapper defined- Since:
- Ant 1.8.0
-
setPresent
This sets whether to select a file if its dest file is present. It could be anegate
boolean, but by doing things this way, we get some documentation on how the system works. A user looking at the documentation should clearly understand that the ONLY files whose presence is being tested are those that already exist in the source directory, hence the lack of adestonly
option.- Parameters:
fp
- An attribute set to eithersrconly
orboth
.
-
verifySettings
public void verifySettings()Checks to make sure all settings are kosher. In this case, it means that the targetdir attribute has been set and we have a mapper.- Overrides:
verifySettings
in classBaseSelector
-
isSelected
The heart of the matter. This is where the selector gets to decide on the inclusion of a file in a particular fileset.- Specified by:
isSelected
in interfaceFileSelector
- Specified by:
isSelected
in classBaseSelector
- Parameters:
basedir
- the base directory the scan is being done fromfilename
- is the name of the file to checkfile
- is a java.io.File object the selector can use- Returns:
- whether the file should be selected or not
-