org.apache.tools.ant.taskdefs

## Class UpToDate

- java.lang.Object
- - org.apache.tools.ant.ProjectComponent
  - - org.apache.tools.ant.Task
    - - org.apache.tools.ant.taskdefs.UpToDate

All Implemented Interfaces:
  java.lang.Cloneable, Condition

    public class UpToDate
    extends Task
    implements Condition

Sets the given property if the specified target has a timestamp greater than all of the source files.

Since:
  Ant 1.2

### Field Summary

Fields
`protected Mapper` `mapperElement`

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

### Constructor Summary

Constructors
Constructor and Description
`UpToDate()`

### Method Summary

Methods
`void` `add(FileNameMapper fileNameMapper)` A nested filenamemapper
`void` `addSrcfiles(FileSet fs)` Nested <srcfiles> element.
`Mapper` `createMapper()` Defines the FileNameMapper to use (nested mapper element).
`Union` `createSrcResources()` Nested resource collections as sources.
`boolean` `eval()` Evaluate (all) target and source file(s) to see if the target(s) is/are up-to-date.
`void` `execute()` Sets property to true if target file(s) have a more recent timestamp than (each of) the corresponding source file(s).
`protected boolean` `scanDir(java.io.File srcDir, java.lang.String[] files)` Scan a directory for files to check for "up to date"ness
`void` `setProperty(java.lang.String property)` The property to set if the target file is more up-to-date than (each of) the source file(s).
`void` `setSrcfile(java.io.File file)` The file that must be older than the target file if the property is to be set.
`void` `setTargetFile(java.io.File file)` The file which must be more up-to-date than (each of) the source file(s) if the property is to be set.
`void` `setValue(java.lang.String value)` The value to set the named property to if the target file is more up-to-date than (each of) the source file(s).

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

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

### Methods inherited from class java.lang.Object

`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### mapperElement

    protected Mapper mapperElement

### Constructor Detail

#### UpToDate

    public UpToDate()

### Method Detail

#### setProperty

    public void setProperty(java.lang.String property)

The property to set if the target file is more up-to-date than (each of) the source file(s).

Parameters:
  `property` - the name of the property to set if Target is up-to-date.

#### setValue

    public void setValue(java.lang.String value)

The value to set the named property to if the target file is more up-to-date than (each of) the source file(s). Defaults to 'true'.

Parameters:
  `value` - the value to set the property to if Target is up-to-date

#### setTargetFile

    public void setTargetFile(java.io.File file)

The file which must be more up-to-date than (each of) the source file(s) if the property is to be set.

Parameters:
  `file` - the file we are checking against.

#### setSrcfile

    public void setSrcfile(java.io.File file)

The file that must be older than the target file if the property is to be set.

Parameters:
  `file` - the file we are checking against the target file.

#### addSrcfiles

    public void addSrcfiles(FileSet fs)

Nested <srcfiles> element.

Parameters:
  `fs` - the source files

#### createSrcResources

    public Union createSrcResources()

Nested resource collections as sources.

Returns:
  the source resources to configure.
Since:
  Ant 1.7

#### 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 is defined

#### add

    public void add(FileNameMapper fileNameMapper)

A nested filenamemapper

Parameters:
  `fileNameMapper` - the mapper to add
Since:
  Ant 1.6.3

#### eval

    public boolean eval()

Evaluate (all) target and source file(s) to see if the target(s) is/are up-to-date.

Specified by:
  `eval` in interface `Condition`
Returns:
  true if the target(s) is/are up-to-date

#### execute

    public void execute()
                 throws BuildException

Sets property to true if target file(s) have a more recent timestamp than (each of) the corresponding source file(s).

Overrides:
  `execute` in class `Task`
Throws:
  `BuildException` - on error

#### scanDir

    protected boolean scanDir(java.io.File srcDir,
                  java.lang.String[] files)

Scan a directory for files to check for "up to date"ness

Parameters:
  `srcDir` - the directory
  `files` - the files to scan for
Returns:
  true if the files are up to date