Package org.apache.tools.ant.taskdefs
Class 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 Task
Synchronize 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 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
-
Constructor Summary
Constructors Constructor Description Sync()
-
Method Summary
Modifier and Type Method 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
-
Constructor Details
-
Sync
public Sync()
-
-
Method Details
-
init
Initialize the sync task.- Overrides:
init
in classTask
- Throws:
BuildException
- if there is a problem.- See Also:
Task.init()
-
execute
Execute 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
Adds a set of files to copy.- Parameters:
set
- a fileset
-
add
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
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
-