org.apache.tools.ant.types
Class FilterSet

java.lang.Object
  extended by org.apache.tools.ant.ProjectComponent
      extended by org.apache.tools.ant.types.DataType
          extended by org.apache.tools.ant.types.FilterSet
All Implemented Interfaces:
java.lang.Cloneable

public class FilterSet
extends DataType
implements java.lang.Cloneable

A set of filters to be applied to something. A filter set may have begintoken and endtokens defined.


Nested Class Summary
static class FilterSet.Filter
          Individual filter component of filterset.
 class FilterSet.FiltersFile
          The filtersfile nested element.
static class FilterSet.OnMissing
          EnumeratedAttribute to set behavior WRT missing filtersfiles: "fail" (default), "warn", "ignore".
 
Field Summary
static java.lang.String DEFAULT_TOKEN_END
          The default token end string
static java.lang.String DEFAULT_TOKEN_START
          The default token start string
 
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
  FilterSet()
          Default constructor.
protected FilterSet(FilterSet filterset)
          Create a Filterset from another filterset.
 
Method Summary
 void addConfiguredFilterSet(FilterSet filterSet)
          Add a Filterset to this filter set.
 void addFilter(FilterSet.Filter filter)
          Add a new filter.
 void addFilter(java.lang.String token, java.lang.String value)
          Add a new filter made from the given token and value.
 java.lang.Object clone()
          Clone the filterset.
 FilterSet.FiltersFile createFiltersfile()
          Create a new FiltersFile.
 java.lang.String getBeginToken()
          Get the begin token for this filterset.
 java.lang.String getEndToken()
          Get the end token for this filterset.
 java.util.Hashtable getFilterHash()
          Gets the filter hash of the FilterSet.
protected  java.util.Vector getFilters()
          Get the filters in the filter set.
 FilterSet.OnMissing getOnMissingFiltersFile()
          Get the onMissingFiltersFile setting.
protected  FilterSet getRef()
          Get the referenced filter set.
 boolean hasFilters()
          Test to see if this filter set has filters.
 boolean isRecurse()
          Get whether recursive token expansion is enabled.
 void readFiltersFromFile(java.io.File filtersFile)
          Read the filters from the given file.
 java.lang.String replaceTokens(java.lang.String line)
          Does replacement on the given string with token matching.
 void setBeginToken(java.lang.String startOfToken)
          Set the string used to id the beginning of a token.
 void setEndToken(java.lang.String endOfToken)
          Set the string used to id the end of a token.
 void setFiltersfile(java.io.File filtersFile)
          Set the file containing the filters for this filterset.
 void setOnMissingFiltersFile(FilterSet.OnMissing onMissingFiltersFile)
          Set the behavior WRT missing filtersfiles.
 void setRecurse(boolean recurse)
          Set whether recursive token expansion is enabled.
 
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, setChecked, setRefid, tooManyAttributes, toString
 
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
 

Field Detail

DEFAULT_TOKEN_START

public static final java.lang.String DEFAULT_TOKEN_START
The default token start string

See Also:
Constant Field Values

DEFAULT_TOKEN_END

public static final java.lang.String DEFAULT_TOKEN_END
The default token end string

See Also:
Constant Field Values
Constructor Detail

FilterSet

public FilterSet()
Default constructor.


FilterSet

protected FilterSet(FilterSet filterset)
Create a Filterset from another filterset.

Parameters:
filterset - the filterset upon which this filterset will be based.
Method Detail

getFilters

protected java.util.Vector getFilters()
Get the filters in the filter set.

Returns:
a Vector of Filter instances.

getRef

protected FilterSet getRef()
Get the referenced filter set.

Returns:
the filterset from the reference.

getFilterHash

public java.util.Hashtable getFilterHash()
Gets the filter hash of the FilterSet.

Returns:
The hash of the tokens and values for quick lookup.

setFiltersfile

public void setFiltersfile(java.io.File filtersFile)
                    throws BuildException
Set the file containing the filters for this filterset.

Parameters:
filtersFile - sets the filter file from which to read filters for this filter set.
Throws:
BuildException - if there is an error.

setBeginToken

public void setBeginToken(java.lang.String startOfToken)
Set the string used to id the beginning of a token.

Parameters:
startOfToken - The new Begintoken value.

getBeginToken

public java.lang.String getBeginToken()
Get the begin token for this filterset.

Returns:
the filter set's begin token for filtering.

setEndToken

public void setEndToken(java.lang.String endOfToken)
Set the string used to id the end of a token.

Parameters:
endOfToken - The new Endtoken value.

getEndToken

public java.lang.String getEndToken()
Get the end token for this filterset.

Returns:
the filter set's end token for replacement delimiting.

setRecurse

public void setRecurse(boolean recurse)
Set whether recursive token expansion is enabled.

Parameters:
recurse - boolean whether to recurse.

isRecurse

public boolean isRecurse()
Get whether recursive token expansion is enabled.

Returns:
boolean whether enabled.

readFiltersFromFile

public void readFiltersFromFile(java.io.File filtersFile)
                         throws BuildException
Read the filters from the given file.

Parameters:
filtersFile - the file from which filters are read.
Throws:
BuildException - when the file cannot be read.

replaceTokens

public java.lang.String replaceTokens(java.lang.String line)
Does replacement on the given string with token matching. This uses the defined begintoken and endtoken values which default to @ for both. This resets the passedTokens and calls iReplaceTokens to do the actual replacements.

Parameters:
line - The line in which to process embedded tokens.
Returns:
The input string after token replacement.

addFilter

public void addFilter(FilterSet.Filter filter)
Add a new filter.

Parameters:
filter - the filter to be added.

createFiltersfile

public FilterSet.FiltersFile createFiltersfile()
Create a new FiltersFile.

Returns:
The filtersfile that was created.

addFilter

public void addFilter(java.lang.String token,
                      java.lang.String value)
Add a new filter made from the given token and value.

Parameters:
token - The token for the new filter.
value - The value for the new filter.

addConfiguredFilterSet

public void addConfiguredFilterSet(FilterSet filterSet)
Add a Filterset to this filter set.

Parameters:
filterSet - the filterset to be added to this filterset

hasFilters

public boolean hasFilters()
Test to see if this filter set has filters.

Returns:
Return true if there are filters in this set.

clone

public java.lang.Object clone()
                       throws BuildException
Clone the filterset.

Overrides:
clone in class DataType
Returns:
a deep clone of this filterset.
Throws:
BuildException - if the clone cannot be performed.

setOnMissingFiltersFile

public void setOnMissingFiltersFile(FilterSet.OnMissing onMissingFiltersFile)
Set the behavior WRT missing filtersfiles.

Parameters:
onMissingFiltersFile - the OnMissing describing the behavior.

getOnMissingFiltersFile

public FilterSet.OnMissing getOnMissingFiltersFile()
Get the onMissingFiltersFile setting.

Returns:
the OnMissing instance.