## 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
`class` `PatternSet.NameEntry` inner class to hold a name on list.

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

Method Summary
`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 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`

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.