Class Touch

All Implemented Interfaces:
Cloneable

public class Touch extends Task
Touch a file and/or fileset(s) and/or filelist(s); corresponds to the Unix touch command.

If the file to touch doesn't exist, an empty one is created.

Since:
Ant 1.1
  • Field Details

    • DEFAULT_DF_FACTORY

      public static final Touch.DateFormatFactory DEFAULT_DF_FACTORY
      Provides access to DateUtils.EN_US_DATE_FORMAT_MIN (primary) and DateUtils.EN_US_DATE_FORMAT_SEC (fallback).
  • Constructor Details

    • Touch

      public Touch()
  • Method Details

    • setFile

      public void setFile(File file)
      Sets a single source file to touch. If the file does not exist an empty file will be created.
      Parameters:
      file - the File to touch.
    • setMillis

      public void setMillis(long millis)
      Set the new modification time of file(s) touched in milliseconds since midnight Jan 1 1970. Optional, default=now.
      Parameters:
      millis - the long timestamp to use.
    • setDatetime

      public void setDatetime(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". Optional, default=now.
      Parameters:
      dateTime - the String date in the specified format.
    • setMkdirs

      public void setMkdirs(boolean mkdirs)
      Set whether nonexistent parent directories should be created when touching new files.
      Parameters:
      mkdirs - boolean whether to create parent directories.
      Since:
      Ant 1.6.3
    • setVerbose

      public void setVerbose(boolean verbose)
      Set whether the touch task will report every file it creates; defaults to true.
      Parameters:
      verbose - boolean flag.
      Since:
      Ant 1.6.3
    • setPattern

      public void setPattern(String pattern)
      Set the format of the datetime attribute.
      Parameters:
      pattern - the SimpleDateFormat-compatible format pattern.
      Since:
      Ant 1.6.3
    • addConfiguredMapper

      public void addConfiguredMapper(Mapper mapper)
      Add a Mapper.
      Parameters:
      mapper - the Mapper to add.
      Since:
      Ant 1.6.3
    • add

      public void add(FileNameMapper fileNameMapper) throws BuildException
      Add a FileNameMapper.
      Parameters:
      fileNameMapper - the FileNameMapper to add.
      Throws:
      BuildException - if multiple mappers are added.
      Since:
      Ant 1.6.3
    • addFileset

      public void addFileset(FileSet set)
      Add a set of files to touch.
      Parameters:
      set - the Fileset to add.
    • addFilelist

      public void addFilelist(FileList list)
      Add a filelist to touch.
      Parameters:
      list - the Filelist to add.
    • add

      public void add(ResourceCollection rc)
      Add a collection of resources to touch.
      Parameters:
      rc - the collection to add.
      Since:
      Ant 1.7
    • checkConfiguration

      protected void checkConfiguration() throws BuildException
      Check that this task has been configured properly.
      Throws:
      BuildException - if configuration errors are detected.
      Since:
      Ant 1.6.3
    • execute

      public void execute() throws BuildException
      Execute the touch operation.
      Overrides:
      execute in class Task
      Throws:
      BuildException - if an error occurs.
    • touch

      protected void touch() throws BuildException
      Does the actual work; assumes everything has been checked by now.
      Throws:
      BuildException - if an error occurs.
    • touch

      @Deprecated protected void touch(File file)
      Deprecated.
      since 1.6.x.
      Touch a single file with the current timestamp (this.millis). This method does not interact with any nested mappers and remains for reasons of backwards-compatibility only.
      Parameters:
      file - file to touch
      Throws:
      BuildException - on error