FilterSets are groups of filters. Filters can be defined as token value pairs
or be read in from a file. FilterSets can appear inside tasks that support this
feature or at the same level as target
– i.e., as children of
project
.
In addition, Filtersets can have begintoken and/or
endtoken attributes to define what to match.
Filtersets are used for doing
replacements in tasks like copy etc.
Filterset
Attribute |
Description |
Default |
Required |
starttoken |
The string marking the beginning of a token. eg
@Date@ |
@ |
No |
endtoken |
The string marking the end of a token. eg
@Date@ |
@ |
No |
Filter
Attribute |
Description |
Required |
token |
The token to replace eg @Date@ |
Yes |
value |
The value to replace it with eg Thursday, April 26, 2001 |
Yes |
Filtersfile
Attribute |
Description |
Required |
file |
The file to load tokens from should be a properties file of
name value pairs. |
Yes |
Examples
You are copying the version.txt file to the dist directory from the build directory
but wish to replace the token @DATE@ with todays date.
<copy file="${build.home}/version.txt" toFile="${dist.home}/version.txt"<
<filterset>
<filter token="DATE" value="${DATE}"/>
</filterset>
</copy>
You are copying the version.txt file to the dist directory from the build directory
but wish to replace the token %DATE* with todays date.
<copy file="${build.home}/version.txt" toFile="${dist.home}/version.txt">
<filterset begintoken="%" endtoken="*">
<filter token="DATE" value="${DATE}"/>
</filterset>
</copy>
Copy all the docs but change all dates and appropriate notices as stored in a file.
<copy toDir="${dist.home}/docs" >
<fileset dir="${build.home}/docs">
<include name="**/*.html">
</fileset>
<filterset begintoken="%" endtoken="*">
<filter token="DATE" value="${DATE}"/>
<filtersfile file="${user.home}/dist.properties"/>
</filterset>
</copy>
Copyright © 2000,2001 Apache Software Foundation. All rights
Reserved.