Package org.apache.tools.ant.taskdefs

## Class Tstamp

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

- All Implemented Interfaces:
    `java.lang.Cloneable`

      public class Tstamp
      extends Task

  Sets properties to the current time, or offsets from the current time. The default properties are TSTAMP, DSTAMP and TODAY;
  Since:
    Ant 1.1

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `Tstamp.CustomFormat` | This nested element that allows a property to be set to the current date and time in a given format.
    `static class` | `Tstamp.Unit` | set of valid units to use for time offsets.

  - ### Field Summary

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

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `Tstamp.CustomFormat` | `createFormat()` | create a custom format with the current prefix.
    `void` | `execute()` | create the timestamps.
    `protected java.util.Date` | `getNow()` | Return the `Date` instance to use as base for DSTAMP, TSTAMP and TODAY.
    `protected java.util.Optional<java.util.Date>` | `getNow​(java.lang.String propertyName, java.util.function.Function<java.lang.String,​java.util.Date> map, java.util.function.BiFunction<java.lang.String,​java.lang.String,​java.lang.String> log)` | Checks and returns a Date if the specified property is set.
    `void` | `setPrefix​(java.lang.String prefix)` | Set a prefix for the properties.

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

- - ### Constructor Detail

    - #### Tstamp

          public Tstamp()

  - ### Method Detail

    - #### setPrefix

          public void setPrefix​(java.lang.String prefix)

      Set a prefix for the properties. If the prefix does not end with a "." one is automatically added.
      Parameters:
        `prefix` - the prefix to use.
      Since:
        Ant 1.5

    - #### execute

          public void execute()
                       throws BuildException

      create the timestamps. Custom ones are done before the standard ones, to get their retaliation in early.
      Overrides:
        `execute` in class `Task`
      Throws:
        `BuildException` - on error.

    - #### createFormat

          public Tstamp.CustomFormat createFormat()

      create a custom format with the current prefix.
      Returns:
        a ready to fill-in format

    - #### getNow

          protected java.util.Date getNow()

      Return the `Date` instance to use as base for DSTAMP, TSTAMP and TODAY.
      Returns:
        Date

    - #### getNow

          protected java.util.Optional<java.util.Date> getNow​(java.lang.String propertyName,
                                                              java.util.function.Function<java.lang.String,​java.util.Date> map,
                                                              java.util.function.BiFunction<java.lang.String,​java.lang.String,​java.lang.String> log)

      Checks and returns a Date if the specified property is set.
      Parameters:
        `propertyName` - name of the property to check
        `map` - conversion of the property value as string to Date
        `log` - supplier of the log message containing the property name and value if the conversion fails
      Returns:
        Optional containing the Date or null