IsLastModified (Apache Ant API)
Description: declaration: package: org.apache.tools.ant.taskdefs.condition, class: IsLastModified

Package org.apache.tools.ant.taskdefs.condition

# Class IsLastModified

java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.taskdefs.condition.IsLastModified

All Implemented Interfaces:
  `java.lang.Cloneable`, `Condition`

    public class IsLastModified
    extends ProjectComponent
    implements Condition

Condition that makes assertions about the last modified date of a resource.

Since:
  Ant 1.8.0

- ## Nested Class Summary

  Nested Classes
  Modifier and Type | Class | Description
  --- | --- | ---
  `static class` | `IsLastModified.CompareMode` | describes comparison modes.

- ## Field Summary

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

  `description, location, project`

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `IsLastModified()` |

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `void` | `add​(Resource r)` | The resource to test.
  `boolean` | `eval()` | evaluate the condition
  `protected long` | `getMillis()` | Calculate timestamp as millis either based on millis or dateTime (and pattern) attribute.
  `void` | `setDatetime​(java.lang.String dateTime)` | Set the new modification time of file(s) touched in the format "MM/DD/YYYY HH:MM AM or PM" or "MM/DD/YYYY HH:MM:SS AM or PM".
  `void` | `setMillis​(long millis)` | Set the new modification time of file(s) touched in milliseconds since midnight Jan 1 1970.
  `void` | `setMode​(IsLastModified.CompareMode mode)` | The type of comparison to test.
  `void` | `setPattern​(java.lang.String pattern)` | Set the format of the datetime attribute.
  `protected void` | `validate()` | Argument validation.

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

  `clone, getDescription, getLocation, getProject, log, log, setDescription, setLocation, setProject`

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

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

- ## Constructor Details

  - ### IsLastModified

    public IsLastModified()

- ## Method Details

  - ### setMillis

    public void setMillis​(long millis)
    Set the new modification time of file(s) touched in milliseconds since midnight Jan 1 1970.
    Parameters:
      `millis` - the `long` timestamp to use.

  - ### setDatetime

    public void setDatetime​(java.lang.String dateTime)
    Set the new modification time of file(s) touched in the format "MM/DD/YYYY HH:MM AM or PM" or "MM/DD/YYYY HH:MM:SS AM or PM".
    Parameters:
      `dateTime` - the `String` date in the specified format.

  - ### setPattern

    public void setPattern​(java.lang.String pattern)
    Set the format of the datetime attribute.
    Parameters:
      `pattern` - the `SimpleDateFormat`-compatible format pattern.

  - ### add

    public void add​(Resource r)
    The resource to test.
    Parameters:
      `r` - the resource to test

  - ### setMode

    public void setMode​(IsLastModified.CompareMode mode)
    The type of comparison to test.
    Parameters:
      `mode` - the mode of comparison.

  - ### validate

    protected void validate() throws BuildException
    Argument validation.
    Throws:
      `BuildException` - if the required attributes are not supplied or if there is an inconsistency in the attributes.

  - ### getMillis

    protected long getMillis() throws BuildException
    Calculate timestamp as millis either based on millis or dateTime (and pattern) attribute.
    Returns:
      time in milliseconds
    Throws:
      `BuildException` - if the date cannot be parsed.

  - ### eval

    public boolean eval() throws BuildException
    evaluate the condition
    Specified by:
      `eval` in interface `Condition`
    Returns:
      true or false depending on the comparison mode and the time of the resource
    Throws:
      `BuildException` - if something goes wrong