PatternSet (Apache Ant API)
Date: 2018-09-12

Package org.apache.tools.ant.types

## Class PatternSet

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

- All Implemented Interfaces:
    `java.lang.Cloneable`

      public class PatternSet
      extends DataType
      implements java.lang.Cloneable

  Named collection of include/exclude tags.

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

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `PatternSet.NameEntry` | inner class to hold a name on list.
    `class` | `PatternSet.PatternFileNameEntry` | Adds encoding support to `PatternSet.NameEntry`.

  - ### 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
    Constructor | Description
    --- | ---
    `PatternSet()` | Creates a new `PatternSet` instance.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addConfiguredInvert​(PatternSet p)` | Add an inverted patternset.
    `void` | `addConfiguredPatternset​(PatternSet p)` | This is a patternset nested element.
    `void` | `append​(PatternSet other, Project p)` | Adds the patterns of the other instance to this set.
    `java.lang.Object` | `clone()` |
    `PatternSet.NameEntry` | `createExclude()` | add a name entry on the exclude list
    `PatternSet.NameEntry` | `createExcludesFile()` | add a name entry on the exclude files list
    `PatternSet.NameEntry` | `createInclude()` | add a name entry on the include list
    `PatternSet.NameEntry` | `createIncludesFile()` | add a name entry on the include files list
    `java.lang.String[]` | `getExcludePatterns​(Project p)` | Returns the filtered include patterns.
    `java.lang.String[]` | `getIncludePatterns​(Project p)` | Returns the filtered include patterns.
    `boolean` | `hasPatterns​(Project p)` | Helper for FileSet classes.
    `void` | `setExcludes​(java.lang.String excludes)` | Appends `excludes` to the current list of exclude patterns.
    `void` | `setExcludesfile​(java.io.File excludesFile)` | Sets the name of the file containing the excludes patterns.
    `void` | `setIncludes​(java.lang.String includes)` | Appends `includes` to the current list of include patterns.
    `void` | `setIncludesfile​(java.io.File includesFile)` | Sets the name of the file containing the includes patterns.
    `void` | `setRefid​(Reference r)` | Makes this instance in effect a reference to another PatternSet instance.
    `java.lang.String` | `toString()` | Basic DataType toString().

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

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

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

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

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

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

- - ### Constructor Detail

    - #### PatternSet

          public PatternSet()

      Creates a new `PatternSet` instance.

  - ### Method Detail

    - #### setRefid

          public void setRefid​(Reference r)
                        throws BuildException

      Makes this instance in effect a reference to another PatternSet instance.

      You must not set another attribute or nest elements inside this element if you make it a reference.

      Overrides:
        `setRefid` in class `DataType`
      Parameters:
        `r` - the reference to another patternset.
      Throws:
        `BuildException` - on error.

    - #### addConfiguredPatternset

          public void addConfiguredPatternset​(PatternSet p)

      This is a patternset nested element.
      Parameters:
        `p` - a configured patternset nested element.

    - #### createInclude

          public PatternSet.NameEntry createInclude()

      add a name entry on the include list
      Returns:
        a nested include element to be configured.

    - #### createIncludesFile

          public PatternSet.NameEntry createIncludesFile()

      add a name entry on the include files list
      Returns:
        a nested includesfile element to be configured.

    - #### createExclude

          public PatternSet.NameEntry createExclude()

      add a name entry on the exclude list
      Returns:
        a nested exclude element to be configured.

    - #### createExcludesFile

          public PatternSet.NameEntry createExcludesFile()

      add a name entry on the exclude files list
      Returns:
        a nested excludesfile element to be configured.

    - #### setIncludes

          public void setIncludes​(java.lang.String includes)

      Appends `includes` to the current list of include patterns. Patterns may be separated by a comma or a space.
      Parameters:
        `includes` - the string containing the include patterns

    - #### setExcludes

          public void setExcludes​(java.lang.String excludes)

      Appends `excludes` to the current list of exclude patterns. Patterns may be separated by a comma or a space.
      Parameters:
        `excludes` - the string containing the exclude patterns

    - #### setIncludesfile

          public void setIncludesfile​(java.io.File includesFile)
                               throws BuildException

      Sets the name of the file containing the includes patterns.
      Parameters:
        `includesFile` - The file to fetch the include patterns from.
      Throws:
        `BuildException` - on error.

    - #### setExcludesfile

          public void setExcludesfile​(java.io.File excludesFile)
                               throws BuildException

      Sets the name of the file containing the excludes patterns.
      Parameters:
        `excludesFile` - The file to fetch the exclude patterns from.
      Throws:
        `BuildException` - on error.

    - #### append

          public void append​(PatternSet other,
                             Project p)

      Adds the patterns of the other instance to this set.
      Parameters:
        `other` - the other PatternSet instance.
        `p` - the current project.

    - #### getIncludePatterns

          public java.lang.String[] getIncludePatterns​(Project p)

      Returns the filtered include patterns.
      Parameters:
        `p` - the current project.
      Returns:
        the filtered included patterns.

    - #### getExcludePatterns

          public java.lang.String[] getExcludePatterns​(Project p)

      Returns the filtered include patterns.
      Parameters:
        `p` - the current project.
      Returns:
        the filtered excluded patterns.

    - #### hasPatterns

          public boolean hasPatterns​(Project p)

      Helper for FileSet classes. Check if there are patterns defined.
      Parameters:
        `p` - the current project.
      Returns:
        true if there are patterns.

    - #### toString

          public java.lang.String toString()

      Description copied from class: `DataType`
      Basic DataType toString().
      Overrides:
        `toString` in class `DataType`
      Returns:
        a printable form of this object.

    - #### clone

          public java.lang.Object clone()

      Overrides:
        `clone` in class `DataType`
      Returns:
        a clone of this patternset.
      Since:
        Ant 1.6

    - #### addConfiguredInvert

          public void addConfiguredInvert​(PatternSet p)

      Add an inverted patternset.
      Parameters:
        `p` - the pattern to invert and add.