## org.apache.tools.ant.taskdefs
Class MatchingTask

    java.lang.Object
      org.apache.tools.ant.ProjectComponent
          org.apache.tools.ant.Task
              org.apache.tools.ant.taskdefs.MatchingTask

All Implemented Interfaces:
  SelectorContainer

Direct Known Subclasses:
  Cab, Checksum, Copydir, CSharp, DDCreator, Delete, Depend, DependSet, Ejbc, EjbJar, FixCRLF, IContract, Ilasm, Javac, JlinkTask, JspC, Native2Ascii, NetRexxC, RenameExtensions, Replace, Rmic, Tar, Translate, WLJspc, XSLTProcess, Zip

public abstract class MatchingTask
extends Task
implements SelectorContainer

This is an abstract task that should be used by all those tasks that require to include or exclude files based on pattern matching.

Since:
  Ant 1.1
Author:
  Arnout J. Kuiper ajkuiper@wxs.nl, Stefano Mazzocchi stefano@apache.org, Sam Ruby rubys@us.ibm.com, Jon S. Stevens jon@clearink.com, Stefan Bodewig, Bruce Atherton

Field Summary
`protected FileSet` `fileset`
`protected boolean` `useDefaultExcludes`

Fields inherited from class org.apache.tools.ant.Task
`description, location, target, taskName, taskType, wrapper`

Fields inherited from class org.apache.tools.ant.ProjectComponent
`project`

Constructor Summary
`MatchingTask()`

Method Summary
`void` `addAnd(AndSelector selector)` add an "And" selector entry on the selector list
`void` `addContains(ContainsSelector selector)` add a contains selector entry on the selector list
`void` `addCustom(ExtendSelector selector)` add an extended selector entry on the selector list
`void` `addDate(DateSelector selector)` add a selector date entry on the selector list
`void` `addDepend(DependSelector selector)` add a depends selector entry on the selector list
`void` `addDepth(DepthSelector selector)` add a depth selector entry on the selector list
`void` `addFilename(FilenameSelector selector)` add a selector filename entry on the selector list
`void` `addMajority(MajoritySelector selector)` add a majority selector entry on the selector list
`void` `addNone(NoneSelector selector)` add a "None" selector entry on the selector list
`void` `addNot(NotSelector selector)` add a "Not" selector entry on the selector list
`void` `addOr(OrSelector selector)` add an "Or" selector entry on the selector list
`void` `addPresent(PresentSelector selector)` add a present selector entry on the selector list
`void` `addSelector(SelectSelector selector)` add a "Select" selector entry on the selector list
`void` `addSize(SizeSelector selector)` add a selector size entry on the selector list
`void` `appendSelector(FileSelector selector)` Add a new selector into this container.
`PatternSet.NameEntry` `createExclude()` add a name entry on the exclude list
`PatternSet.NameEntry` `createExcludesFile()` add a name entry on the include 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
`PatternSet` `createPatternSet()` add a set of patterns
`protected DirectoryScanner` `getDirectoryScanner(java.io.File baseDir)` Returns the directory scanner needed to access the files to process.
`protected FileSet` `getImplicitFileSet()` Accessor for the implict fileset.
`FileSelector[]` `getSelectors(Project p)` Returns the set of selectors as an array.
`boolean` `hasSelectors()` Indicates whether there are any selectors here.
`int` `selectorCount()` Gives the count of the number of selectors in this container
`java.util.Enumeration` `selectorElements()` Returns an enumerator for accessing the set of selectors.
`void` `setCaseSensitive(boolean isCaseSensitive)` Sets case sensitivity of the file system
`void` `setDefaultexcludes(boolean useDefaultExcludes)` Sets whether default exclusions should be used or not.
`void` `setExcludes(java.lang.String excludes)` Sets the set of exclude patterns.
`void` `setExcludesfile(java.io.File excludesfile)` Sets the name of the file containing the includes patterns.
`void` `setFollowSymlinks(boolean followSymlinks)` Sets whether or not symbolic links should be followed.
`void` `setIncludes(java.lang.String includes)` Sets the set of include patterns.
`void` `setIncludesfile(java.io.File includesfile)` Sets the name of the file containing the includes patterns.
`void` `setProject(Project project)` Sets the project object of this component.
`void` `XsetIgnore(java.lang.String ignoreString)` List of filenames and directory names to not include.
`void` `XsetItems(java.lang.String itemString)` Set this to be the items in the base directory that you want to be included.

Methods inherited from class org.apache.tools.ant.Task
`execute, getDescription, getLocation, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, handleErrorFlush, handleErrorOutput, handleFlush, handleOutput, init, isInvalid, log, log, maybeConfigure, perform, setDescription, setLocation, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName`

Methods inherited from class org.apache.tools.ant.ProjectComponent
`getProject`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### useDefaultExcludes

    protected boolean useDefaultExcludes

### fileset

    protected FileSet fileset

Constructor Detail

### MatchingTask

    public MatchingTask()

Method Detail

### setProject

    public void setProject(Project project)

  Description copied from class: `ProjectComponent`
  Sets the project object of this component. This method is used by Project when a component is added to it so that the component has access to the functions of the project. It should not be used for any other purpose.

  Overrides:
    `setProject` in class `ProjectComponent`
  Parameters:
    `project` - Project in whose scope this component belongs. Must not be `null`.
  See Also:
    `ProjectComponent.setProject(org.apache.tools.ant.Project)`

### createInclude

    public PatternSet.NameEntry createInclude()

  add a name entry on the include list

### createIncludesFile

    public PatternSet.NameEntry createIncludesFile()

  add a name entry on the include files list

### createExclude

    public PatternSet.NameEntry createExclude()

  add a name entry on the exclude list

### createExcludesFile

    public PatternSet.NameEntry createExcludesFile()

  add a name entry on the include files list

### createPatternSet

    public PatternSet createPatternSet()

  add a set of patterns

### setIncludes

    public void setIncludes(java.lang.String includes)

  Sets the set of include patterns. Patterns may be separated by a comma or a space.

  Parameters:
    `includes` - the string containing the include patterns

### XsetItems

    public void XsetItems(java.lang.String itemString)

  Set this to be the items in the base directory that you want to be included. You can also specify "*" for the items (ie: items="*") and it will include all the items in the base directory.

  Parameters:
    `itemString` - the string containing the files to include.

### setExcludes

    public void setExcludes(java.lang.String excludes)

  Sets the set of exclude patterns. Patterns may be separated by a comma or a space.

  Parameters:
    `excludes` - the string containing the exclude patterns

### XsetIgnore

    public void XsetIgnore(java.lang.String ignoreString)

  List of filenames and directory names to not include. They should be either , or " " (space) separated. The ignored files will be logged.

  Parameters:
    `ignoreString` - the string containing the files to ignore.

### setDefaultexcludes

    public void setDefaultexcludes(boolean useDefaultExcludes)

  Sets whether default exclusions should be used or not.

  Parameters:
    `useDefaultExcludes` - "true"|"on"|"yes" when default exclusions should be used, "false"|"off"|"no" when they shouldn't be used.

### getDirectoryScanner

    protected DirectoryScanner getDirectoryScanner(java.io.File baseDir)

  Returns the directory scanner needed to access the files to process.

### setIncludesfile

    public void setIncludesfile(java.io.File includesfile)

  Sets the name of the file containing the includes patterns.

  Parameters:
    `includesfile` - A string containing the filename to fetch the include patterns from.

### setExcludesfile

    public void setExcludesfile(java.io.File excludesfile)

  Sets the name of the file containing the includes patterns.

  Parameters:
    `excludesfile` - A string containing the filename to fetch the include patterns from.

### setCaseSensitive

    public void setCaseSensitive(boolean isCaseSensitive)

  Sets case sensitivity of the file system

  Parameters:
    `isCaseSensitive` - "true"|"on"|"yes" if file system is case sensitive, "false"|"off"|"no" when not.

### setFollowSymlinks

    public void setFollowSymlinks(boolean followSymlinks)

  Sets whether or not symbolic links should be followed.

  Parameters:
    `followSymlinks` - whether or not symbolic links should be followed

### hasSelectors

    public boolean hasSelectors()

  Indicates whether there are any selectors here.

  Specified by:
    `hasSelectors` in interface `SelectorContainer`
  Returns:
    whether any selectors are in this container

### selectorCount

    public int selectorCount()

  Gives the count of the number of selectors in this container

  Specified by:
    `selectorCount` in interface `SelectorContainer`
  Returns:
    the number of selectors in this container

### getSelectors

    public FileSelector[] getSelectors(Project p)

  Returns the set of selectors as an array.

  Specified by:
    `getSelectors` in interface `SelectorContainer`
  Returns:
    an array of selectors in this container

### selectorElements

    public java.util.Enumeration selectorElements()

  Returns an enumerator for accessing the set of selectors.

  Specified by:
    `selectorElements` in interface `SelectorContainer`
  Returns:
    an enumerator that goes through each of the selectors

### appendSelector

    public void appendSelector(FileSelector selector)

  Add a new selector into this container.

  Specified by:
    `appendSelector` in interface `SelectorContainer`
  Parameters:
    `selector` - the new selector to add
  Returns:
    the selector that was added

### addSelector

    public void addSelector(SelectSelector selector)

  add a "Select" selector entry on the selector list

  Specified by:
    `addSelector` in interface `SelectorContainer`

### addAnd

    public void addAnd(AndSelector selector)

  add an "And" selector entry on the selector list

  Specified by:
    `addAnd` in interface `SelectorContainer`

### addOr

    public void addOr(OrSelector selector)

  add an "Or" selector entry on the selector list

  Specified by:
    `addOr` in interface `SelectorContainer`

### addNot

    public void addNot(NotSelector selector)

  add a "Not" selector entry on the selector list

  Specified by:
    `addNot` in interface `SelectorContainer`

### addNone

    public void addNone(NoneSelector selector)

  add a "None" selector entry on the selector list

  Specified by:
    `addNone` in interface `SelectorContainer`

### addMajority

    public void addMajority(MajoritySelector selector)

  add a majority selector entry on the selector list

  Specified by:
    `addMajority` in interface `SelectorContainer`

### addDate

    public void addDate(DateSelector selector)

  add a selector date entry on the selector list

  Specified by:
    `addDate` in interface `SelectorContainer`

### addSize

    public void addSize(SizeSelector selector)

  add a selector size entry on the selector list

  Specified by:
    `addSize` in interface `SelectorContainer`

### addFilename

    public void addFilename(FilenameSelector selector)

  add a selector filename entry on the selector list

  Specified by:
    `addFilename` in interface `SelectorContainer`

### addCustom

    public void addCustom(ExtendSelector selector)

  add an extended selector entry on the selector list

  Specified by:
    `addCustom` in interface `SelectorContainer`

### addContains

    public void addContains(ContainsSelector selector)

  add a contains selector entry on the selector list

  Specified by:
    `addContains` in interface `SelectorContainer`

### addPresent

    public void addPresent(PresentSelector selector)

  add a present selector entry on the selector list

  Specified by:
    `addPresent` in interface `SelectorContainer`

### addDepth

    public void addDepth(DepthSelector selector)

  add a depth selector entry on the selector list

  Specified by:
    `addDepth` in interface `SelectorContainer`

### addDepend

    public void addDepend(DependSelector selector)

  add a depends selector entry on the selector list

  Specified by:
    `addDepend` in interface `SelectorContainer`

### getImplicitFileSet

    protected final FileSet getImplicitFileSet()

  Accessor for the implict fileset.

  Since:
    Ant 1.5.2

Copyright © 2000-2003 Apache Software Foundation. All Rights Reserved.