Package org.apache.tools.ant.types.selectors

# Class MappingSelector

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.MappingSelector

All Implemented Interfaces:
  `Cloneable`, `ResourceSelector`, `FileSelector`

Direct Known Subclasses:
  `DependSelector`, `DifferentSelector`

public abstract class MappingSelector extends BaseSelector
A mapping selector is an abstract class adding mapping support to the base selector

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected int`
  `granularity`
  `protected FileNameMapper`
  `map`
  `protected Mapper`
  `mapperElement`
  `protected File`
  `targetdir`

  ### Fields inherited from class org.apache.tools.ant.types.DataType

  `checked, ref`

  ### Fields inherited from class org.apache.tools.ant.ProjectComponent

  `description, location, project`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `MappingSelector()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addConfigured​(FileNameMapper fileNameMapper)`
  Add a configured FileNameMapper instance.
  `Mapper`
  `createMapper()`
  Defines the FileNameMapper to use (nested mapper element).
  `boolean`
  `isSelected​(File basedir, String filename, File file)`
  The heart of the matter.
  `protected abstract boolean`
  `selectionTest​(File srcfile, File destfile)`
  this test is our selection test that compared the file with the destfile
  `void`
  `setGranularity​(int granularity)`
  Sets the number of milliseconds leeway we will give before we consider a file out of date.
  `void`
  `setTargetdir​(File targetdir)`
  The name of the file or directory which is checked for out-of-date files.
  `void`
  `verifySettings()`
  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, toString`

  ### 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`

- ## Field Details

  - ### targetdir

    protected File targetdir

  - ### mapperElement

    protected Mapper mapperElement

  - ### map

    protected FileNameMapper map

  - ### granularity

    protected int granularity

- ## Constructor Details

  - ### MappingSelector

    public MappingSelector()

- ## Method Details

  - ### setTargetdir

    public void setTargetdir​(File targetdir)
    The name of the file or directory which is checked for out-of-date files.
    Parameters:
      `targetdir` - the directory to scan looking for files.

  - ### createMapper

    public Mapper createMapper() throws BuildException
    Defines the FileNameMapper to use (nested mapper element).
    Returns:
      a mapper to be configured
    Throws:
      `BuildException` - if more than one mapper defined

  - ### addConfigured

    public void addConfigured​(FileNameMapper fileNameMapper)
    Add a configured FileNameMapper instance.
    Parameters:
      `fileNameMapper` - the FileNameMapper to add
    Throws:
      `BuildException` - if more than one mapper defined
    Since:
      Ant 1.8.0

  - ### verifySettings

    public void verifySettings()
    Checks to make sure all settings are kosher. In this case, it means that the dest attribute has been set and we have a mapper.
    Overrides:
      `verifySettings` in class `BaseSelector`

  - ### isSelected

    public boolean isSelected​(File basedir, String filename, 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

  - ### selectionTest

    protected abstract boolean selectionTest​(File srcfile, File destfile)
    this test is our selection test that compared the file with the destfile
    Parameters:
      `srcfile` - file to test; may be null
      `destfile` - destination file
    Returns:
      true if source file compares with destination file

  - ### setGranularity

    public void setGranularity​(int granularity)
    Sets the number of milliseconds leeway we will give before we consider a file out of date. Defaults to 2000 on MS-DOS derivatives and 1000 on others.
    Parameters:
      `granularity` - the leeway in milliseconds