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, DDCreator, Delete, Depend, DependSet, DotnetBaseMatchingTask, Ejbc, EjbJar, FixCRLF, IContract, Image, 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

Field Summary
protected  FileSet fileset
           
 
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 add(FileSelector selector)
          add an arbitary selector
 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 addContainsRegexp(ContainsRegexpSelector selector)
          add a regular expression 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 addDifferent(DifferentSelector selector)
          add a type selector entry on the type 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 addModified(ModifiedSelector selector)
          add the modified selector
 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 addType(TypeSelector selector)
          add a type selector entry on the type 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 implicit 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, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, maybeConfigure, perform, reconfigure, setDescription, setLocation, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
 
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

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

Returns:
a NameEntry object to be configured

createIncludesFile

public PatternSet.NameEntry createIncludesFile()
add a name entry on the include files list

Returns:
an NameEntry object to be configured

createExclude

public PatternSet.NameEntry createExclude()
add a name entry on the exclude list

Returns:
an NameEntry object to be configured

createExcludesFile

public PatternSet.NameEntry createExcludesFile()
add a name entry on the include files list

Returns:
an NameEntry object to be configured

createPatternSet

public PatternSet createPatternSet()
add a set of patterns

Returns:
PatternSet object to be configured

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
Parameters:
p - the current project
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

addSelector

public void addSelector(SelectSelector selector)
add a "Select" selector entry on the selector list

Specified by:
addSelector in interface SelectorContainer
Parameters:
selector - the selector to add

addAnd

public void addAnd(AndSelector selector)
add an "And" selector entry on the selector list

Specified by:
addAnd in interface SelectorContainer
Parameters:
selector - the selector to add

addOr

public void addOr(OrSelector selector)
add an "Or" selector entry on the selector list

Specified by:
addOr in interface SelectorContainer
Parameters:
selector - the selector to add

addNot

public void addNot(NotSelector selector)
add a "Not" selector entry on the selector list

Specified by:
addNot in interface SelectorContainer
Parameters:
selector - the selector to add

addNone

public void addNone(NoneSelector selector)
add a "None" selector entry on the selector list

Specified by:
addNone in interface SelectorContainer
Parameters:
selector - the selector to add

addMajority

public void addMajority(MajoritySelector selector)
add a majority selector entry on the selector list

Specified by:
addMajority in interface SelectorContainer
Parameters:
selector - the selector to add

addDate

public void addDate(DateSelector selector)
add a selector date entry on the selector list

Specified by:
addDate in interface SelectorContainer
Parameters:
selector - the selector to add

addSize

public void addSize(SizeSelector selector)
add a selector size entry on the selector list

Specified by:
addSize in interface SelectorContainer
Parameters:
selector - the selector to add

addFilename

public void addFilename(FilenameSelector selector)
add a selector filename entry on the selector list

Specified by:
addFilename in interface SelectorContainer
Parameters:
selector - the selector to add

addCustom

public void addCustom(ExtendSelector selector)
add an extended selector entry on the selector list

Specified by:
addCustom in interface SelectorContainer
Parameters:
selector - the selector to add

addContains

public void addContains(ContainsSelector selector)
add a contains selector entry on the selector list

Specified by:
addContains in interface SelectorContainer
Parameters:
selector - the selector to add

addPresent

public void addPresent(PresentSelector selector)
add a present selector entry on the selector list

Specified by:
addPresent in interface SelectorContainer
Parameters:
selector - the selector to add

addDepth

public void addDepth(DepthSelector selector)
add a depth selector entry on the selector list

Specified by:
addDepth in interface SelectorContainer
Parameters:
selector - the selector to add

addDepend

public void addDepend(DependSelector selector)
add a depends selector entry on the selector list

Specified by:
addDepend in interface SelectorContainer
Parameters:
selector - the selector to add

addContainsRegexp

public void addContainsRegexp(ContainsRegexpSelector selector)
add a regular expression selector entry on the selector list

Specified by:
addContainsRegexp in interface SelectorContainer
Parameters:
selector - the selector to add

addDifferent

public void addDifferent(DifferentSelector selector)
add a type selector entry on the type list

Specified by:
addDifferent in interface SelectorContainer
Parameters:
selector - the selector to add
Since:
ant 1.6

addType

public void addType(TypeSelector selector)
add a type selector entry on the type list

Specified by:
addType in interface SelectorContainer
Parameters:
selector - the selector to add
Since:
ant 1.6

addModified

public void addModified(ModifiedSelector selector)
add the modified selector

Specified by:
addModified in interface SelectorContainer
Parameters:
selector - the selector to add
Since:
ant 1.6

add

public void add(FileSelector selector)
add an arbitary selector

Specified by:
add in interface SelectorContainer
Parameters:
selector - the selector to add
Since:
Ant 1.6

getImplicitFileSet

protected final FileSet getImplicitFileSet()
Accessor for the implicit fileset.

Since:
Ant 1.5.2


Copyright 2000-2005 Apache Software Foundation. All Rights Reserved.