|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.apache.tools.ant.ProjectComponent | +--org.apache.tools.ant.Task | +--org.apache.tools.ant.taskdefs.Copy
Copies a file or directory to a new file or directory. Files are only copied if the source file is newer than the destination file, or when the destination file does not exist. It is possible to explicitly overwrite existing files.
This implementation is based on Arnout Kuiper's initial design document, the following mailing list discussions, and the copyfile/copydir tasks.
Field Summary | |
protected java.util.Hashtable |
completeDirMap
|
protected java.io.File |
destDir
|
protected java.io.File |
destFile
|
protected java.util.Hashtable |
dirCopyMap
|
protected boolean |
failonerror
|
protected java.io.File |
file
|
protected java.util.Hashtable |
fileCopyMap
|
protected java.util.Vector |
filesets
|
protected FileUtils |
fileUtils
|
protected boolean |
filtering
|
protected boolean |
flatten
|
protected boolean |
forceOverwrite
|
protected boolean |
includeEmpty
|
protected Mapper |
mapperElement
|
protected boolean |
preserveLastModified
|
protected int |
verbosity
|
Fields inherited from class org.apache.tools.ant.Task |
description, location, target, taskName, taskType, wrapper |
Fields inherited from class org.apache.tools.ant.ProjectComponent |
project |
Constructor Summary | |
Copy()
Copy task constructor. |
Method Summary | |
void |
add(FileNameMapper fileNameMapper)
A nested filenamemapper |
void |
addFileset(FileSet set)
Adds a set of files to copy. |
protected void |
buildMap(java.io.File fromDir,
java.io.File toDir,
java.lang.String[] names,
FileNameMapper mapper,
java.util.Hashtable map)
Add to a map of files/directories to copy |
FilterChain |
createFilterChain()
Adds a FilterChain. |
FilterSet |
createFilterSet()
Adds a filterset. |
Mapper |
createMapper()
Defines the mapper to map source to destination files. |
protected void |
doFileOperations()
Actually does the file (and possibly empty directory) copies. |
void |
execute()
Performs the copy operation. |
java.lang.String |
getEncoding()
|
protected FileUtils |
getFileUtils()
|
protected java.util.Vector |
getFilterChains()
Get the filterchains being applied to this operation. |
protected java.util.Vector |
getFilterSets()
Get the filtersets being applied to this operation. |
java.lang.String |
getOutputEncoding()
|
boolean |
getPreserveLastModified()
Whether to give the copied files the same last modified time as the original files. |
boolean |
isEnableMultipleMapping()
|
protected void |
scan(java.io.File fromDir,
java.io.File toDir,
java.lang.String[] files,
java.lang.String[] dirs)
Compares source files to destination files to see if they should be copied. |
void |
setEnableMultipleMappings(boolean enableMultipleMappings)
Attribute to handle mappers that return multiple mappings for a given source path. |
void |
setEncoding(java.lang.String encoding)
Sets the character encoding |
void |
setFailOnError(boolean failonerror)
If false, note errors to the output but keep going. |
void |
setFile(java.io.File file)
Sets a single source file to copy. |
void |
setFiltering(boolean filtering)
If true, enables filtering. |
void |
setFlatten(boolean flatten)
When copying directory trees, the files can be "flattened" into a single directory. |
void |
setGranularity(long granularity)
The number of milliseconds leeway to give before deciding a target is out of date. |
void |
setIncludeEmptyDirs(boolean includeEmpty)
Used to copy empty directories. |
void |
setOutputEncoding(java.lang.String encoding)
Sets the character encoding for output files. |
void |
setOverwrite(boolean overwrite)
Overwrite any existing destination file(s). |
void |
setPreserveLastModified(boolean preserve)
Give the copied files the same last modified time as the original files. |
void |
setPreserveLastModified(java.lang.String preserve)
Deprecated. setPreserveLastModified(String) has been deprecated and replaced with setPreserveLastModified(boolean) to consistently let the Introspection mechanism work. |
void |
setTodir(java.io.File destDir)
Sets the destination directory. |
void |
setTofile(java.io.File destFile)
Sets the destination file. |
void |
setVerbose(boolean verbose)
Used to force listing of all names of copied files. |
protected void |
validateAttributes()
Ensure we have a consistent and legal set of attributes, and set any internal flags necessary based on different combinations of attributes. |
Methods inherited from class org.apache.tools.ant.Task |
getDescription, getLocation, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, maybeConfigure, perform, reconfigure, setDescription, setLocation, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType |
Methods inherited from class org.apache.tools.ant.ProjectComponent |
getProject, setProject |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected java.io.File file
protected java.io.File destFile
protected java.io.File destDir
protected java.util.Vector filesets
protected boolean filtering
protected boolean preserveLastModified
protected boolean forceOverwrite
protected boolean flatten
protected int verbosity
protected boolean includeEmpty
protected boolean failonerror
protected java.util.Hashtable fileCopyMap
protected java.util.Hashtable dirCopyMap
protected java.util.Hashtable completeDirMap
protected Mapper mapperElement
protected FileUtils fileUtils
Constructor Detail |
public Copy()
Method Detail |
protected FileUtils getFileUtils()
public void setFile(java.io.File file)
file
- the file to copypublic void setTofile(java.io.File destFile)
destFile
- the file to copy topublic void setTodir(java.io.File destDir)
destDir
- the destination directorypublic FilterChain createFilterChain()
public FilterSet createFilterSet()
public void setPreserveLastModified(java.lang.String preserve)
preserve
- a boolean stringpublic void setPreserveLastModified(boolean preserve)
preserve
- if true perverse the modified time, default is falsepublic boolean getPreserveLastModified()
protected java.util.Vector getFilterSets()
protected java.util.Vector getFilterChains()
public void setFiltering(boolean filtering)
filtering
- if true enable filtering, default is falsepublic void setOverwrite(boolean overwrite)
overwrite
- if true force overwriting of destination file(s)
even if the destination file(s) are younger than
the corresponding source file. Default is false.public void setFlatten(boolean flatten)
flatten
- if true flatten the destination directory. Default
is false.public void setVerbose(boolean verbose)
verbose
- output the names of copied files. Default is false.public void setIncludeEmptyDirs(boolean includeEmpty)
includeEmpty
- if true copy empty directories. Default is true.public void setEnableMultipleMappings(boolean enableMultipleMappings)
enableMultipleMappings
- If true the task will
copy to all the mappings for a given source path, if
false, only the first file or directory is
processed.
By default, this setting is false to provide backward
compatibility with earlier releases.public boolean isEnableMultipleMapping()
public void setFailOnError(boolean failonerror)
failonerror
- true or falsepublic void addFileset(FileSet set)
set
- a set of files to copypublic Mapper createMapper() throws BuildException
BuildException
- if more than one mapper is definedpublic void add(FileNameMapper fileNameMapper)
fileNameMapper
- the mapper to addpublic void setEncoding(java.lang.String encoding)
encoding
- the character encodingpublic java.lang.String getEncoding()
null
if not set.public void setOutputEncoding(java.lang.String encoding)
encoding
- the character encodingpublic java.lang.String getOutputEncoding()
null
if not set.public void setGranularity(long granularity)
Default is 0 milliseconds, or 2 seconds on DOS systems.
public void execute() throws BuildException
execute
in class Task
BuildException
- if an error occursprotected void validateAttributes() throws BuildException
BuildException
- if an error occursprotected void scan(java.io.File fromDir, java.io.File toDir, java.lang.String[] files, java.lang.String[] dirs)
fromDir
- The source directorytoDir
- The destination directoryfiles
- A list of files to copydirs
- A list of directories to copyprotected void buildMap(java.io.File fromDir, java.io.File toDir, java.lang.String[] names, FileNameMapper mapper, java.util.Hashtable map)
fromDir
- the source directorytoDir
- the destination directorynames
- a list of filenamesmapper
- a FileNameMapper
valuemap
- a map of source file to array of destination filesprotected void doFileOperations()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |