Class Sync

java.lang.Object
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.
  • Constructor Details

    • Sync

      public Sync()
  • Method Details

    • init

      public void init() throws BuildException
      Initialize the sync task.
      Overrides:
      init in class Task
      Throws:
      BuildException - if there is a problem.
      See Also:
      Task.init()
    • execute

      public void execute() throws BuildException
      Execute the sync task.
      Overrides:
      execute in class Task
      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 - a long 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