Interface FileTree

All Superinterfaces:
AntBuilderAware, Buildable, FileCollection, Iterable<File>
All Known Subinterfaces:
ConfigurableFileTree, SourceDirectorySet

public interface FileTree extends FileCollection

A FileTree represents a hierarchy of files. It extends FileCollection to add hierarchy query and manipulation methods. You typically use a FileTree to represent files to copy or the contents of an archive.

You can obtain a FileTree instance using Project.fileTree(java.util.Map), Project.zipTree(Object) or Project.tarTree(Object).

  • Method Details

    • matching

      FileTree matching(Closure filterConfigClosure)

      Restricts the contents of this tree to those files matching the given filter. The filtered tree is live, so that any changes to this tree are reflected in the filtered tree.

      The given closure is used to configure the filter. A PatternFilterable is passed to the closure as its delegate. Only files which match the specified include patterns will be included in the filtered tree. Any files which match the specified exclude patterns will be excluded from the filtered tree.

      Parameters:
      filterConfigClosure - the closure to use to configure the filter.
      Returns:
      The filtered tree.
    • matching

      FileTree matching(Action<? super PatternFilterable> filterConfigAction)

      Restricts the contents of this tree to those files matching the given filter. The filtered tree is live, so that any changes to this tree are reflected in the filtered tree.

      The given action is used to configure the filter. A PatternFilterable is passed to the action. Only files which match the specified include patterns will be included in the filtered tree. Any files which match the specified exclude patterns will be excluded from the filtered tree.

      Parameters:
      filterConfigAction - Action to use to configure the filter.
      Returns:
      The filtered tree.
      Since:
      3.3
    • matching

      FileTree matching(PatternFilterable patterns)

      Restricts the contents of this tree to those files matching the given filter. The filtered tree is live, so that any changes to this tree are reflected in the filtered tree.

      The given pattern set is used to configure the filter. Only files which match the specified include patterns will be included in the filtered tree. Any files which match the specified exclude patterns will be excluded from the filtered tree.

      Parameters:
      patterns - the pattern set to use to configure the filter.
      Returns:
      The filtered tree.
    • visit

      FileTree visit(FileVisitor visitor)
      Visits the files and directories in this file tree. Files are visited in depth-first prefix order, so that a directory is visited before its children.
      Parameters:
      visitor - The visitor.
      Returns:
      this
    • visit

      FileTree visit(Closure visitor)
      Visits the files and directories in this file tree. Files are visited in depth-first prefix order, so that a directory is visited before its children. The file/directory to be visited is passed to the given closure as a FileVisitDetails
      Parameters:
      visitor - The visitor.
      Returns:
      this
    • visit

      FileTree visit(Action<? super FileVisitDetails> visitor)
      Visits the files and directories in this file tree. Files are visited in depth-first prefix order, so that a directory is visited before its children. The file/directory to be visited is passed to the given action as a FileVisitDetails
      Parameters:
      visitor - The visitor.
      Returns:
      this
    • plus

      FileTree plus(FileTree fileTree)
      Returns a FileTree which contains the union of this tree and the given tree. The returned tree is live, so that changes to either this tree or the other source tree are reflected in the returned tree.
      Parameters:
      fileTree - The tree. Should not be null.
      Returns:
      The union of this tree and the given tree.
    • getAsFileTree

      FileTree getAsFileTree()
      Returns this.
      Specified by:
      getAsFileTree in interface FileCollection
      Returns:
      this
    • getFiles

      Set<File> getFiles()
      Returns the contents of this tree as a flattened Set.
      Specified by:
      getFiles in interface FileCollection
      Returns:
      The files. Returns an empty set if this tree is empty.