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

# Class DateSelector

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.BaseExtendSelector
org.apache.tools.ant.types.selectors.DateSelector

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

public class DateSelector extends BaseExtendSelector
Selector that chooses files based on their last modified date.

Since:
  1.5

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `DateSelector.TimeComparisons`
  Enumerated attribute with the values for time comparison.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `CHECKDIRS_KEY`
  Key to used for parameterized custom selector
  `static final String`
  `DATETIME_KEY`
  Key to used for parameterized custom selector
  `static final String`
  `GRANULARITY_KEY`
  Key to used for parameterized custom selector
  `static final String`
  `MILLIS_KEY`
  Key to used for parameterized custom selector
  `static final String`
  `PATTERN_KEY`
  Key to used for parameterized custom selector
  `static final String`
  `WHEN_KEY`
  Key to used for parameterized custom selector

  ### Fields inherited from class org.apache.tools.ant.types.selectors.BaseExtendSelector

  `parameters`

  ### 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
  `DateSelector()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `long`
  `getMillis()`
  Returns the millisecond value the selector is set for.
  `boolean`
  `isSelected(File basedir, String filename, File file)`
  The heart of the matter.
  `void`
  `setCheckdirs(boolean includeDirs)`
  Set whether to check dates on directories.
  `void`
  `setDatetime(String dateTime)`
  Sets the date.
  `void`
  `setGranularity(int granularity)`
  Sets the number of milliseconds leeway we will give before we consider a file not to have matched a date.
  `void`
  `setMillis(long millis)`
  Set the time; for users who prefer to express time in ms since 1970.
  `void`
  `setParameters(Parameter... parameters)`
  When using this as a custom selector, this method will be called.
  `void`
  `setPattern(String pattern)`
  Sets the pattern to be used for the SimpleDateFormat.
  `void`
  `setWhen(DateSelector.TimeComparisons tcmp)`
  Sets the type of comparison to be done on the file's last modified date.
  `void`
  `setWhen(TimeComparison t)`
  Set the comparison type.
  `String`
  `toString()`
  Basic DataType toString().
  `void`
  `verifySettings()`
  This is a consistency check to ensure the selector's required values have been set.

  ### Methods inherited from class org.apache.tools.ant.types.selectors.BaseExtendSelector

  `getParameters`

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

- ## Field Details

  - ### MILLIS_KEY

    public static final String MILLIS_KEY
    Key to used for parameterized custom selector
    See Also:
      - Constant Field Values

  - ### DATETIME_KEY

    public static final String DATETIME_KEY
    Key to used for parameterized custom selector
    See Also:
      - Constant Field Values

  - ### CHECKDIRS_KEY

    public static final String CHECKDIRS_KEY
    Key to used for parameterized custom selector
    See Also:
      - Constant Field Values

  - ### GRANULARITY_KEY

    public static final String GRANULARITY_KEY
    Key to used for parameterized custom selector
    See Also:
      - Constant Field Values

  - ### WHEN_KEY

    public static final String WHEN_KEY
    Key to used for parameterized custom selector
    See Also:
      - Constant Field Values

  - ### PATTERN_KEY

    public static final String PATTERN_KEY
    Key to used for parameterized custom selector
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### DateSelector

    public DateSelector()

- ## Method Details

  - ### toString

    public String toString()
    Description copied from class: `DataType`
    Basic DataType toString().
    Overrides:
      `toString` in class `DataType`
    Returns:
      a string describing this object

  - ### setMillis

    public void setMillis(long millis)
    Set the time; for users who prefer to express time in ms since 1970.
    Parameters:
      `millis` - the time to compare file's last modified date to, expressed in milliseconds.

  - ### getMillis

    public long getMillis()
    Returns the millisecond value the selector is set for.
    Returns:
      the millisecond value.

  - ### setDatetime

    public void setDatetime(String dateTime)
    Sets the date. The user must supply it in MM/DD/YYYY HH:MM AM_PM format, unless an alternate pattern is specified via the pattern attribute.
    Parameters:
      `dateTime` - a formatted date `String`.

  - ### setCheckdirs

    public void setCheckdirs(boolean includeDirs)
    Set whether to check dates on directories.
    Parameters:
      `includeDirs` - whether to check the timestamp on directories.

  - ### setGranularity

    public void setGranularity(int granularity)
    Sets the number of milliseconds leeway we will give before we consider a file not to have matched a date.
    Parameters:
      `granularity` - the number of milliseconds leeway.

  - ### setWhen

    public void setWhen(DateSelector.TimeComparisons tcmp)
    Sets the type of comparison to be done on the file's last modified date.
    Parameters:
      `tcmp` - The comparison to perform, an EnumeratedAttribute.

  - ### setWhen

    public void setWhen(TimeComparison t)
    Set the comparison type.
    Parameters:
      `t` - TimeComparison object.

  - ### setPattern

    public void setPattern(String pattern)
    Sets the pattern to be used for the SimpleDateFormat.
    Parameters:
      `pattern` - the pattern that defines the date format.

  - ### setParameters

    public void setParameters(Parameter... parameters)
    When using this as a custom selector, this method will be called. It translates each parameter into the appropriate setXXX() call.
    Specified by:
      `setParameters` in interface `Parameterizable`
    Overrides:
      `setParameters` in class `BaseExtendSelector`
    Parameters:
      `parameters` - the complete set of parameters for this selector.

  - ### verifySettings

    public void verifySettings()
    This is a consistency check to ensure the selector's required values have been set.
    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 `BaseExtendSelector`
    Parameters:
      `basedir` - the base directory from which the scan is being performed.
      `filename` - is the name of the file to check.
      `file` - is a java.io.File object the selector can use.
    Returns:
      whether the file is selected.