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

### Method Summary

All Methods Instance Methods Concrete Methods
`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.