Package org.apache.tools.ant.taskdefs
Class Touch
- java.lang.Object
-
- org.apache.tools.ant.ProjectComponent
-
- org.apache.tools.ant.Task
-
- org.apache.tools.ant.taskdefs.Touch
-
- All Implemented Interfaces:
java.lang.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
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceTouch.DateFormatFactory
-
Field Summary
Fields Modifier and Type Field Description static Touch.DateFormatFactoryDEFAULT_DF_FACTORYProvides access to DateUtils.EN_US_DATE_FORMAT_MIN (primary) and DateUtils.EN_US_DATE_FORMAT_SEC (fallback).-
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
-
-
Constructor Summary
Constructors Constructor Description Touch()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidadd(ResourceCollection rc)Add a collection of resources to touch.voidadd(FileNameMapper fileNameMapper)Add aFileNameMapper.voidaddConfiguredMapper(Mapper mapper)Add aMapper.voidaddFilelist(FileList list)Add a filelist to touch.voidaddFileset(FileSet set)Add a set of files to touch.protected voidcheckConfiguration()Check that this task has been configured properly.voidexecute()Execute the touch operation.voidsetDatetime(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".voidsetFile(java.io.File file)Sets a single source file to touch.voidsetMillis(long millis)Set the new modification time of file(s) touched in milliseconds since midnight Jan 1 1970.voidsetMkdirs(boolean mkdirs)Set whether nonexistent parent directories should be created when touching new files.voidsetPattern(java.lang.String pattern)Set the format of the datetime attribute.voidsetVerbose(boolean verbose)Set whether the touch task will report every file it creates; defaults totrue.protected voidtouch()Does the actual work; assumes everything has been checked by now.protected voidtouch(java.io.File file)Deprecated.since 1.6.x.-
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
-
-
-
-
Field Detail
-
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).
-
-
Method Detail
-
setFile
public void setFile(java.io.File file)
Sets a single source file to touch. If the file does not exist an empty file will be created.- Parameters:
file- theFileto 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- thelongtimestamp 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". Optional, default=now.- Parameters:
dateTime- theStringdate in the specified format.
-
setMkdirs
public void setMkdirs(boolean mkdirs)
Set whether nonexistent parent directories should be created when touching new files.- Parameters:
mkdirs-booleanwhether 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 totrue.- Parameters:
verbose-booleanflag.- Since:
- Ant 1.6.3
-
setPattern
public void setPattern(java.lang.String pattern)
Set the format of the datetime attribute.- Parameters:
pattern- theSimpleDateFormat-compatible format pattern.- Since:
- Ant 1.6.3
-
addConfiguredMapper
public void addConfiguredMapper(Mapper mapper)
Add aMapper.- Parameters:
mapper- theMapperto add.- Since:
- Ant 1.6.3
-
add
public void add(FileNameMapper fileNameMapper) throws BuildException
Add aFileNameMapper.- Parameters:
fileNameMapper- theFileNameMapperto 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- theFilesetto add.
-
addFilelist
public void addFilelist(FileList list)
Add a filelist to touch.- Parameters:
list- theFilelistto 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 BuildExceptionCheck that this task has been configured properly.- Throws:
BuildException- if configuration errors are detected.- Since:
- Ant 1.6.3
-
execute
public void execute() throws BuildExceptionExecute the touch operation.- Overrides:
executein classTask- Throws:
BuildException- if an error occurs.
-
touch
protected void touch() throws BuildExceptionDoes the actual work; assumes everything has been checked by now.- Throws:
BuildException- if an error occurs.
-
touch
@Deprecated protected void touch(java.io.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
-
-