FileSet (Apache Ant API)
Date: 2021-07-10

org.apache.tools.ant.types

## Class FileSet

- java.lang.Object
- - org.apache.tools.ant.ProjectComponent
  - - org.apache.tools.ant.types.DataType
    - - org.apache.tools.ant.types.AbstractFileSet
      - - org.apache.tools.ant.types.FileSet

- All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Iterable<Resource>, ResourceCollection, SelectorContainer
  Direct Known Subclasses:
    ArchiveFileSet, BCFileSet, ClassfileSet, Javadoc.TagArgument, LibFileSet

      public class FileSet
      extends AbstractFileSet
      implements ResourceCollection

  Moved out of MatchingTask to make it a standalone object that could be referenced (by scripts for example).

- - ### Field Summary

    - ### Fields inherited from class org.apache.tools.ant.types.DataType

      `checked, ref`

    - ### Fields inherited from class org.apache.tools.ant.ProjectComponent

      `description, location, project`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `` | `FileSet()` Constructor for FileSet.
    `protected` | `FileSet(FileSet fileset)` Constructor for FileSet, with FileSet to shallowly clone.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `clone()` Return a FileSet that has the same basedir and same patternsets as this one.
    `boolean` | `isFilesystemOnly()` Always returns true.
    `java.util.Iterator<Resource>` | `iterator()` Fulfill the ResourceCollection contract.
    `int` | `size()` Fulfill the ResourceCollection contract.

    - ### Methods inherited from class org.apache.tools.ant.types.AbstractFileSet

      `add, addAnd, addContains, addContainsRegexp, addCustom, addDate, addDepend, addDepth, addDifferent, addFilename, addMajority, addModified, addNone, addNot, addOr, addPresent, addReadable, addSelector, addSize, addType, addWritable, appendExcludes, appendIncludes, appendSelector, createExclude, createExcludesFile, createInclude, createIncludesFile, createPatternSet, dieOnCircularReference, getDefaultexcludes, getDir, getDir, getDirectoryScanner, getDirectoryScanner, getErrorOnMissingDir, getMaxLevelsOfSymlinks, getRef, getSelectors, hasPatterns, hasSelectors, isCaseSensitive, isFollowSymlinks, mergeExcludes, mergeIncludes, mergePatterns, selectorCount, selectorElements, setCaseSensitive, setDefaultexcludes, setDir, setErrorOnMissingDir, setExcludes, setExcludesfile, setFile, setFollowSymlinks, setIncludes, setIncludesfile, setMaxLevelsOfSymlinks, setRefid, setupDirectoryScanner, setupDirectoryScanner, toString`

    - ### Methods inherited from class org.apache.tools.ant.types.DataType

      `checkAttributesAllowed, checkChildrenAllowed, circularReference, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, pushAndInvokeCircularReferenceCheck, setChecked, tooManyAttributes`

    - ### Methods inherited from class org.apache.tools.ant.ProjectComponent

      `getDescription, getLocation, getProject, log, log, setDescription, setLocation, setProject`

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface java.lang.Iterable

      `forEach, spliterator`

- - ### Constructor Detail

    - #### FileSet

          public FileSet()

      Constructor for FileSet.

    - #### FileSet

          protected FileSet(FileSet fileset)

      Constructor for FileSet, with FileSet to shallowly clone.
      Parameters:
        `fileset` - the fileset to clone

  - ### Method Detail

    - #### clone

          public java.lang.Object clone()

      Return a FileSet that has the same basedir and same patternsets as this one.
      Overrides:
        `clone` in class `AbstractFileSet`
      Returns:
        the cloned fileset

    - #### iterator

          public java.util.Iterator<Resource> iterator()

      Fulfill the ResourceCollection contract.
      Specified by:
        `iterator` in interface `java.lang.Iterable<Resource>`
      Specified by:
        `iterator` in interface `ResourceCollection`
      Returns:
        an Iterator of Resources.
      Since:
        Ant 1.7

    - #### size

          public int size()

      Fulfill the ResourceCollection contract.
      Specified by:
        `size` in interface `ResourceCollection`
      Returns:
        number of elements as int.
      Since:
        Ant 1.7

    - #### isFilesystemOnly

          public boolean isFilesystemOnly()

      Always returns true.
      Specified by:
        `isFilesystemOnly` in interface `ResourceCollection`
      Returns:
        true indicating that all elements will be FileResources.
      Since:
        Ant 1.7