org.apache.tools.ant.taskdefsClass Sync
- java.lang.Object
- org.apache.tools.ant.ProjectComponent
- org.apache.tools.ant.Task
- org.apache.tools.ant.taskdefs.Sync
- All Implemented Interfaces:
- java.lang.Cloneable
public class Sync extends TaskSynchronize a local target directory from the files defined in one or more filesets.Uses a <copy> task internally, but forbidding the use of mappers and filter chains. Files of the destination directory not present in any of the source fileset are removed.
- Since:
- Ant 1.6 revised by Dan Armbrust to remove orphaned directories.
Nested Class Summary
Nested Classes Modifier and Type Class and Description static class
Sync.MyCopy
Subclass Copy in order to access it's file/dir maps.static class
Sync.SyncTarget
Inner class used to hold exclude patterns and selectors to save stuff that happens to live in the target directory but should not get removed.
Field Summary
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
Constructor Summary
Constructors Constructor and Description Sync()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description void
add(ResourceCollection rc)
Adds a collection of filesystem resources to copy.void
addFileset(FileSet set)
Adds a set of files to copy.void
addPreserveInTarget(Sync.SyncTarget s)
A container for patterns and selectors that can be used to specify files that should be kept in the target even if they are not present in any source directory.void
execute()
Execute the sync task.void
init()
Initialize the sync task.void
setFailOnError(boolean failonerror)
If false, note errors to the output but keep going.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
setOverwrite(boolean overwrite)
Overwrite any existing destination file(s).void
setTodir(java.io.File destDir)
Sets the destination directory.void
setVerbose(boolean verbose)
Used to force listing of all names of copied files.
Methods inherited from class org.apache.tools.ant.Task
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, 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
Method Detail
init
public void init() throws BuildExceptionInitialize the sync task.
- Overrides:
init
in classTask
- Throws:
BuildException
- if there is a problem.- See Also:
Task.init()
execute
public void execute() throws BuildExceptionExecute the sync task.
- Overrides:
execute
in classTask
- Throws:
BuildException
- if there is an error.- See Also:
Task.execute()
setTodir
public void setTodir(java.io.File destDir)Sets the destination directory.
- Parameters:
destDir
- the destination directory
setVerbose
public void setVerbose(boolean verbose)Used to force listing of all names of copied files.
- Parameters:
verbose
- if true force listing of all names of copied files.
setOverwrite
public void setOverwrite(boolean overwrite)Overwrite any existing destination file(s).
- Parameters:
overwrite
- if true overwrite any existing destination file(s).
setIncludeEmptyDirs
public void setIncludeEmptyDirs(boolean includeEmpty)Used to copy empty directories.
- Parameters:
includeEmpty
- If true copy empty directories.
setFailOnError
public void setFailOnError(boolean failonerror)If false, note errors to the output but keep going.
- Parameters:
failonerror
- true or false
addFileset
public void addFileset(FileSet set)Adds a set of files to copy.
- Parameters:
set
- a fileset
add
public void add(ResourceCollection rc)Adds a collection of filesystem resources to copy.
- Parameters:
rc
- a resource collection- Since:
- Ant 1.7
setGranularity
public void setGranularity(long granularity)The number of milliseconds leeway to give before deciding a target is out of date.Default is 0 milliseconds, or 2 seconds on DOS systems.
- Parameters:
granularity
- along
value- Since:
- Ant 1.6.2
addPreserveInTarget
public void addPreserveInTarget(Sync.SyncTarget s)A container for patterns and selectors that can be used to specify files that should be kept in the target even if they are not present in any source directory.You must not invoke this method more than once.
- Parameters:
s
- a preserveintarget nested element- Since:
- Ant 1.7