org.apache.tools.ant.taskdefsClass 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 TaskTouch 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 and Description static interface
Touch.DateFormatFactory
Field Summary
Fields Modifier and Type Field and Description static Touch.DateFormatFactory
DEFAULT_DF_FACTORY
Provides 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 and Description Touch()
Construct a newTouch
task.
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method and Description void
add(FileNameMapper fileNameMapper)
Add aFileNameMapper
.void
add(ResourceCollection rc)
Add a collection of resources to touch.void
addConfiguredMapper(Mapper mapper)
Add aMapper
.void
addFilelist(FileList list)
Add a filelist to touch.void
addFileset(FileSet set)
Add a set of files to touch.protected void
checkConfiguration()
Check that this task has been configured properly.void
execute()
Execute the touch operation.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
setFile(java.io.File file)
Sets a single source file to touch.void
setMillis(long millis)
Set the new modification time of file(s) touched in milliseconds since midnight Jan 1 1970.void
setMkdirs(boolean mkdirs)
Set whether nonexistent parent directories should be created when touching new files.void
setPattern(java.lang.String pattern)
Set the format of the datetime attribute.void
setVerbose(boolean verbose)
Set whether the touch task will report every file it creates; defaults totrue
.protected void
touch()
Does the actual work; assumes everything has been checked by now.protected void
touch(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_FACTORYProvides 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
- theFile
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
- thelong
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". Optional, default=now.
- Parameters:
dateTime
- theString
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 totrue
.
- Parameters:
verbose
-boolean
flag.- 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
- theMapper
to add.- Since:
- Ant 1.6.3
add
public void add(FileNameMapper fileNameMapper) throws BuildExceptionAdd aFileNameMapper
.
- Parameters:
fileNameMapper
- theFileNameMapper
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
- theFileset
to add.
addFilelist
public void addFilelist(FileList list)Add a filelist to touch.
- Parameters:
list
- theFilelist
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 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:
execute
in 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
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