PresentSelector (Apache Ant API)

org.apache.tools.ant.types.selectors
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:
FileSelector

public class PresentSelector
extends BaseSelector

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
Author:
Bruce Atherton

Nested Class Summary
static class PresentSelector.FilePresence
          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.types.DataType
checked, description, ref
 
Fields inherited from class org.apache.tools.ant.ProjectComponent
project
 
Constructor Summary
PresentSelector()
           
 
Method Summary
 Mapper createMapper()
          Defines the FileNameMapper to use (nested mapper element).
 boolean isSelected(java.io.File basedir, java.lang.String filename, java.io.File file)
          The heart of the matter.
 void setPresent(PresentSelector.FilePresence fp)
          This sets whether to select a file if its dest file is present.
 void setTargetdir(java.io.File targetdir)
          The name of the file or directory which is checked for matching files.
 java.lang.String toString()
           
 void verifySettings()
          Checks to make sure all settings are kosher.
 
Methods inherited from class org.apache.tools.ant.types.selectors.BaseSelector
getError, setError, validate
 
Methods inherited from class org.apache.tools.ant.types.DataType
circularReference, dieOnCircularReference, getCheckedRef, getDescription, isReference, noChildrenAllowed, setDescription, setRefid, tooManyAttributes
 
Methods inherited from class org.apache.tools.ant.ProjectComponent
getProject, log, log, setProject
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PresentSelector


public PresentSelector()
Method Detail

toString


public java.lang.String toString()
Overrides:
toString in class java.lang.Object

setTargetdir


public void setTargetdir(java.io.File targetdir)
The name of the file or directory which is checked for matching files.

Parameters:
targetdir - the directory to scan looking for matching files.

createMapper


public Mapper createMapper()
                    throws BuildException
Defines the FileNameMapper to use (nested mapper element).

BuildException

setPresent


public void setPresent(PresentSelector.FilePresence fp)
This sets whether to select a file if its dest file is present. It could be a negate 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 a destonly option.

Parameters:
fp - An attribute set to either srconlyboth.

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 class BaseSelector

isSelected


public boolean isSelected(java.io.File basedir,
                          java.lang.String filename,
                          java.io.File file)
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 interface FileSelector
Specified by:
isSelected in class BaseSelector
Parameters:
basedir - the base directory the scan is being done from
filename - is the name of the file to check
file - is a java.io.File object the selector can use
Returns:
whether the file should be selected or not


Copyright © 2000-2002 Apache Software Foundation. All Rights Reserved.