You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by gi...@apache.org on 2018/02/28 07:01:27 UTC
[12/47] ant git commit: Use HTML 5(-ish), fix links
http://git-wip-us.apache.org/repos/asf/ant/blob/66b52f99/manual/Types/selectors.html
----------------------------------------------------------------------
diff --git a/manual/Types/selectors.html b/manual/Types/selectors.html
index be2da68..657bfbc 100644
--- a/manual/Types/selectors.html
+++ b/manual/Types/selectors.html
@@ -24,129 +24,108 @@
<body>
<h2>Selectors</h2>
- <p>Selectors are a mechanism whereby the files that make up a
- <code><fileset></code> can be selected based on criteria
- other than filename as provided by the <code><include></code>
- and <code><exclude></code> tags.</p>
+ <p>Selectors are a mechanism whereby the files that make up a <code><fileset></code>
+ can be selected based on criteria other than filename as provided by
+ the <code><include></code> and <code><exclude></code> tags.</p>
<h3>How to use a Selector</h3>
- <p>A selector is an element of FileSet, and appears within it. It can
- also be defined outside of any target by using the <code><selector></code> tag
- and then using it as a reference.
- </p>
-
- <p>Different selectors have different attributes. Some selectors can
- contain other selectors, and these are called
- <a href="#selectcontainers"><code>Selector Containers</code></a>.
- There is also a category of selectors that allow
- user-defined extensions, called
- <a href="#customselect"><code>Custom Selectors</code></a>.
- The ones built in to Apache Ant are called
- <a href="#coreselect"><code>Core Selectors</code></a>.
- </p>
+ <p>A selector is an element of FileSet, and appears within it. It can also be defined
+ outside of any target by using the <code><selector></code> tag and then using it as a
+ reference.</p>
+
+ <p>Different selectors have different attributes. Some selectors can contain other
+ selectors, and these are called <a href="#selectcontainers"><code>Selector
+ Containers</code></a>. There is also a category of selectors that allow user-defined
+ extensions, called <a href="#customselect"><code>Custom Selectors</code></a>. The ones
+ built in to Apache Ant are called <a href="#coreselect"><code>Core Selectors</code></a>.</p>
<h3 id="coreselect">Core Selectors</h3>
- <p>Core selectors are the ones that come standard
- with Ant. They can be used within a fileset and can be contained
- within Selector Containers.</p>
+ <p>Core selectors are the ones that come standard with Ant. They can be used within a
+ fileset and can be contained within Selector Containers.</p>
<p>The core selectors are:</p>
<ul>
- <li><a href="#containsselect"><code><contains></code></a> - Select
- files that contain a particular text string</li>
- <li><a href="#dateselect"><code><date></code></a> - Select files
- that have been modified either before or after a particular date
- and time</li>
- <li><a href="#dependselect"><code><depend></code></a> - Select files
- that have been modified more recently than equivalent files
- elsewhere</li>
- <li><a href="#depthselect"><code><depth></code></a> - Select files
- that appear so many directories down in a directory tree</li>
- <li><a href="#differentselect"><code><different></code></a> - Select files
- that are different from those elsewhere</li>
- <li><a href="#filenameselect"><code><filename></code></a> - Select
- files whose name matches a particular pattern. Equivalent to
- the include and exclude elements of a patternset.</li>
- <li><a href="#presentselect"><code><present></code></a> - Select
- files that either do or do not exist in some other location</li>
- <li><a href="#regexpselect"><code><containsregexp></code></a> - Select
- files that match a regular expression</li>
- <li><a href="#sizeselect"><code><size></code></a> - Select files
- that are larger or smaller than a particular number of bytes.</li>
- <li><a href="#typeselect"><code><type></code></a> - Select files
- that are either regular files or directories.</li>
- <li><a href="#modified"><code><modified></code></a> - Select files if
- the return value of the configured algorithm is different from that
- stored in a cache.</li>
- <li><a href="#signedselector"><code><signedselector></code></a> - Select files if
- they are signed, and optionally if they have a signature of a certain name.</li>
- <li><a href="#scriptselector"><code><scriptselector></code></a> -
- Use a BSF or JSR 223 scripting language to create
- your own selector</li>
- <li><a href="#readable"><code><readable></code></a> -
- Select files if they are readable.</li>
- <li><a href="#writable"><code><writable></code></a> -
- Select files if they are writable.</li>
- <li><a href="#executable"><code><executable></code></a> -
- Select files if they are executable.</li>
- <li><a href="#symlink"><code><symlink></code></a> -
- Select files if they are symlink.</li>
- <li><a href="#ownedBy"><code><ownedBy></code></a> -
- Select files if they are owned by a given user.</li>
+ <li><a href="#containsselect"><code><contains></code></a>—Select files that
+ contain a particular text string</li>
+ <li><a href="#dateselect"><code><date></code></a>—Select files that have been
+ modified either before or after a particular date and time</li>
+ <li><a href="#dependselect"><code><depend></code></a>—Select files that have
+ been modified more recently than equivalent files elsewhere</li>
+ <li><a href="#depthselect"><code><depth></code></a>—Select files that appear
+ so many directories down in a directory tree</li>
+ <li><a href="#differentselect"><code><different></code></a>—Select files that
+ are different from those elsewhere</li>
+ <li><a href="#filenameselect"><code><filename></code></a>—Select files whose
+ name matches a particular pattern. Equivalent to the include and exclude elements of a
+ patternset.</li>
+ <li><a href="#presentselect"><code><present></code></a>—Select files that
+ either do or do not exist in some other location</li>
+ <li><a href="#regexpselect"><code><containsregexp></code></a>—Select files
+ that match a regular expression</li>
+ <li><a href="#sizeselect"><code><size></code></a>—Select files that are larger
+ or smaller than a particular number of bytes.</li>
+ <li><a href="#typeselect"><code><type></code></a>—Select files that are either
+ regular files or directories.</li>
+ <li><a href="#modified"><code><modified></code></a>—Select files if the return
+ value of the configured algorithm is different from that stored in a cache.</li>
+ <li><a href="#signedselector"><code><signedselector></code></a>—Select files
+ if they are signed, and optionally if they have a signature of a certain name.</li>
+ <li><a href="#scriptselector"><code><scriptselector></code></a>—Use a BSF or
+ JSR 223 scripting language to create your own selector</li>
+ <li><a href="#readable"><code><readable></code></a>—Select files if they are
+ readable.</li>
+ <li><a href="#writable"><code><writable></code></a>—Select files if they are
+ writable.</li>
+ <li><a href="#executable"><code><executable></code></a>—Select files if they
+ are executable.</li>
+ <li><a href="#symlink"><code><symlink></code></a>—Select files if they are
+ symlink.</li>
+ <li><a href="#ownedBy"><code><ownedBy></code></a>—Select files if they are
+ owned by a given user.</li>
</ul>
<h4 id="containsselect">Contains Selector</h4>
- <p>The <code><contains></code> tag in a FileSet limits
- the files defined by that fileset to only those which contain the
- string specified by the <code>text</code> attribute.
- .</p>
- <p>The <code><contains></code> selector can be used as a
- ResourceSelector (see the
- <a href="resources.html#restrict"><restrict></a>
- ResourceCollection).</p>
+ <p>The <code><contains></code> tag in a FileSet limits the files defined by that
+ fileset to only those which contain the string specified by the <code>text</code>
+ attribute.</p>
+ <p>The <code><contains></code> selector can be used as a ResourceSelector (see
+ the <a href="resources.html#restrict"><restrict></a> ResourceCollection).</p>
- <table>
+ <table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">text</td>
- <td valign="top">Specifies the text that every file must contain
+ <td>text</td>
+ <td>Specifies the text that every file must contain
</td>
- <td valign="top" align="center">Yes</td>
+ <td>Yes</td>
</tr>
<tr>
- <td valign="top">casesensitive</td>
- <td valign="top">Whether to pay attention to case when looking
- for the string in the <code>text</code> attribute. Default is
- true.
- </td>
- <td valign="top" align="center">No</td>
+ <td>casesensitive</td>
+ <td>Whether to pay attention to case when looking for the string in the <var>text</var>
+ attribute.</td>
+ <td>No; default is <q>true</q></td>
+ </tr>
+ <tr>
+ <td>ignorewhitespace</td>
+ <td>Whether to eliminate whitespace before checking for the string in
+ the <var>text</var> attribute.</td>
+ <td>No; default is <q>false</q></td>
</tr>
<tr>
- <td valign="top">ignorewhitespace</td>
- <td valign="top">Whether to eliminate whitespace before checking
- for the string in the <code>text</code> attribute. Default is
- false.
+ <td>encoding</td>
+ <td>Encoding of the resources being selected.
+ <em>Since Ant 1.9.0</em>
</td>
- <td valign="top" align="center">No</td>
- </tr>
- <tr>
- <td valign="top">encoding</td>
- <td valign="top">Encoding of the resources being selected.
- Required in practice if the encoding of the files being
- selected is different from the default encoding of the JVM
- where Ant is running.
- <em>Since Ant 1.9.0</em>
- </td>
- <td valign="top" align="center">No</td>
- </tr>
+ <td>No; defaults to default JVM character encoding</td>
+ </tr>
</table>
<p>Here is an example of how to use the Contains Selector:</p>
@@ -154,79 +133,66 @@
<pre>
<fileset dir="${doc.path}" includes="**/*.html">
<contains text="script" casesensitive="no"/>
-</fileset>
-</pre>
+</fileset></pre>
- <p>Selects all the HTML files that contain the string
- <code>script</code>.</p>
+ <p>Selects all the HTML files that contain the string <code>script</code>.</p>
<h4 id="dateselect">Date Selector</h4>
- <p>The <code><date></code> tag in a FileSet will put
- a limit on the files specified by the include tag, so that tags
- whose last modified date does not meet the date limits specified
- by the selector will not end up being selected.</p>
+ <p>The <code><date></code> tag in a FileSet will put a limit on the files specified by
+ the include tag, so that tags whose last modified date does not meet the date limits
+ specified by the selector will not end up being selected.</p>
- <table>
+ <table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">datetime</td>
- <td valign="top">Specifies the date and time to test for.
- Should be in the format "MM/dd/yyyy hh:mm a" using the US
- locale, or an alternative pattern specified via
- the <i>pattern</i> attribute.
+ <td>datetime</td>
+ <td>Specifies the date and time to test for. Should be in the format <q>MM/dd/yyyy
+ hh:mm a</q> using the US locale, or an alternative pattern specified via
+ the <var>pattern</var> attribute.
</td>
- <td valign="top" align="center" rowspan="2">At least one of the two.</td>
+ <td rowspan="2">At least one of the two</td>
</tr>
<tr>
- <td valign="top">millis</td>
- <td valign="top">The number of milliseconds since 1970 that should
- be tested for. It is usually much easier to use the datetime
- attribute.
+ <td>millis</td>
+ <td class="left">The number of milliseconds since 1970 that should be tested for. It is
+ usually much easier to use the <var>datetime</var> attribute.
</td>
</tr>
<tr>
- <td valign="top">when</td>
- <td valign="top">Indicates how to interpret the date, whether
- the files to be selected are those whose last modified times should
- be before, after, or equal to the specified value. Acceptable
- values for this attribute are:
+ <td>when</td>
+ <td>Indicates how to interpret the date, whether the files to be selected are those
+ whose last modified times should be before, after, or equal to the specified
+ value. Acceptable values for this attribute are:
<ul>
- <li>before - select files whose last modified date is before the indicated date
- <li>after - select files whose last modified date is after the indicated date
- <li>equal - select files whose last modified date is this exact date
- </ul>
- The default is equal.
- <td valign="top" align="center">No</td>
+ <li><q>before</q>—select files whose last modified date is before the indicated date</li>
+ <li><q>after</q>—select files whose last modified date is after the indicated date</li>
+ <li><q>equal</q>—select files whose last modified date is this exact date</li>
+ </ul></td>
+ <td>No; default is <q>equal</q></td>
</tr>
<tr>
- <td valign="top">granularity</td>
- <td valign="top">The number of milliseconds leeway to use when
- comparing file modification times. This is needed because not every
- file system supports tracking the last modified time to the
- millisecond level. Default is 0 milliseconds, or 2 seconds on DOS systems.
- </td>
- <td valign="top" align="center">No</td>
+ <td>granularity</td>
+ <td>The number of milliseconds leeway to use when comparing file modification
+ times. This is needed because not every file system supports tracking the last
+ modified time to the millisecond level.</td>
+ <td>No; default is 0 milliseconds, or 2 seconds on DOS systems</td>
</tr>
<tr>
- <td valign="top">pattern</td>
- <td valign="top">The <CODE>SimpleDateFormat</CODE>-compatible pattern
- to use when interpreting the <i>datetime</i> attribute using
- the current locale.
- <em>Since Ant 1.6.2</em>
- </td>
- <td valign="top" align="center">No</td>
+ <td>pattern</td>
+ <td>The <code>SimpleDateFormat</code>-compatible pattern to use when interpreting
+ the <var>datetime</var> attribute using the current locale.
+ <em>Since Ant 1.6.2</em></td>
+ <td>No</td>
</tr>
<tr>
- <td valign="top">checkdirs</td>
- <td valign="top">
- Indicates whether or not to check dates on directories.
- </td>
- <td valign="top" align="center">No, defaults to <i>false</i></td>
+ <td>checkdirs</td>
+ <td>Indicates whether or not to check dates on directories.</td>
+ <td>No; defaults to <q>false</q></td>
</tr>
</table>
@@ -235,48 +201,41 @@
<pre>
<fileset dir="${jar.path}" includes="**/*.jar">
<date datetime="01/01/2001 12:00 AM" when="before"/>
-</fileset>
-</pre>
+</fileset></pre>
- <p>Selects all JAR files which were last modified before midnight
- January 1, 2001.</p>
+ <p>Selects all JAR files which were last modified before midnight January 1, 2001.</p>
<h4 id="dependselect">Depend Selector</h4>
- <p>The <code><depend></code> tag selects files
- whose last modified date is later than another, equivalent file in
- another location.</p>
+ <p>The <code><depend></code> tag selects files whose last modified date is later than
+ another, equivalent file in another location.</p>
<p>The <code><depend></code> tag supports the use of a
- contained <a href="mapper.html"><code><mapper></code></a> element
- to define the location of the file to be compared against. If no
- <code><mapper></code> element is specified, the
- <code>identity</code> type mapper is used.</p>
+ contained <a href="mapper.html"><code><mapper></code></a> element to define the
+ location of the file to be compared against. If no <code><mapper></code> element is
+ specified, the <code>identity</code> type mapper is used.</p>
<p>The <code><depend></code> selector is case-sensitive.</p>
- <table>
+ <table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">targetdir</td>
- <td valign="top">The base directory to look for the files to compare
- against. The precise location depends on a combination of this
- attribute and the <code><mapper></code> element, if any.
- </td>
- <td valign="top" align="center">Yes</td>
+ <td>targetdir</td>
+ <td>The base directory to look for the files to compare against. The precise location
+ depends on a combination of this attribute and the <code><mapper></code>
+ element, if any.</td>
+ <td>Yes</td>
</tr>
<tr>
- <td valign="top">granularity</td>
- <td valign="top">The number of milliseconds leeway to give before
- deciding a file is out of date. This is needed because not every
- file system supports tracking the last modified time to the
- millisecond level. Default is 0 milliseconds, or 2 seconds on DOS systems.
- </td>
- <td valign="top" align="center">No</td>
+ <td>granularity</td>
+ <td>The number of milliseconds leeway to give before deciding a file is out of
+ date. This is needed because not every file system supports tracking the last modified
+ time to the millisecond level.</td>
+ <td>No; default is 0 milliseconds, or 2 seconds on DOS systems</td>
</tr>
</table>
@@ -285,40 +244,31 @@
<pre>
<fileset dir="${ant.1.5}/src/main" includes="**/*.java">
<depend targetdir="${ant.1.4.1}/src/main"/>
-</fileset>
-</pre>
+</fileset></pre>
- <p>Selects all the Java source files which were modified in the
- 1.5 release.
- </p>
+ <p>Selects all the Java source files which were modified in the 1.5 release.</p>
<h4 id="depthselect">Depth Selector</h4>
- <p>The <code><depth></code> tag selects files based on
- how many directory levels deep they are in relation to the base
- directory of the fileset.
- </p>
+ <p>The <code><depth></code> tag selects files based on how many directory levels deep
+ they are in relation to the base directory of the fileset.</p>
- <table>
+ <table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">min</td>
- <td valign="top">The minimum number of directory levels below
- the base directory that a file must be in order to be selected.
- Default is no limit.
- </td>
- <td valign="top" align="center" rowspan="2">At least one of the two.</td>
+ <td>min</td>
+ <td>The minimum number of directory levels below the base directory that a file must be
+ in order to be selected.</td>
+ <td rowspan="2">At least one of the two; default is no limit</td>
</tr>
<tr>
- <td valign="top">max</td>
- <td valign="top">The maximum number of directory levels below
- the base directory that a file can be and still be selected.
- Default is no limit.
- </td>
+ <td>max</td>
+ <td class="left">The maximum number of directory levels below the base directory that a
+ file can be and still be selected.</td>
</tr>
</table>
@@ -327,84 +277,71 @@
<pre>
<fileset dir="${doc.path}" includes="**/*">
<depth max="1"/>
-</fileset>
-</pre>
+</fileset></pre>
<p>Selects all files in the base directory and one directory below
that.</p>
<h4 id="differentselect">Different Selector</h4>
- <p>The <code><different></code> selector will select a file
- if it is deemed to be 'different' from an equivalent file in
- another location. The rules for determining difference between
- the two files are as follows:
+ <p>The <code><different></code> selector will select a file if it is deemed to be
+ 'different' from an equivalent file in another location. The rules for determining
+ difference between the two files are as follows:<p>
<ol>
- <li>If a file is only present in the resource collection you apply
- the selector to but not in targetdir (or after applying the
- mapper) the file is selected.
- <li>If a file is only present in targetdir (or after applying the
- mapper) it is ignored.
- <li>Files with different lengths are different.
- <li>If <tt>ignoreFileTimes</tt> is turned off, then differing file
- timestamps will cause files to be regarded as different.
- <li>Unless <tt>ignoreContents</tt> is set to true,
- a byte-for-byte check is run against the two files.
+ <li>If a file is only present in the resource collection you apply the selector to but not
+ in <var>targetdir</var> (or after applying the mapper) the file is selected.</li>
+ <li>If a file is only present in <var>targetdir</var> (or after applying the mapper) it is
+ ignored.</li>
+ <li>Files with different lengths are different.</li>
+ <li>If <var>ignoreFileTimes</var> is turned <q>off</q>, then differing file timestamps will
+ cause files to be regarded as different.</li>
+ <li>Unless <var>ignoreContents</var> is set to <q>true</q>, a byte-for-byte check is run
+ against the two files.</li>
</ol>
+ <p>This is a useful selector to work with programs and tasks that don't handle dependency
+ checking properly; even if a predecessor task always creates its output files, followup
+ tasks can be driven off copies made with a different selector, so their dependencies are
+ driven on the absolute state of the files, not just a timestamp. For example: anything
+ fetched from a web site, or the output of some program. To reduce the amount of checking,
+ when using this task inside a <code><copy></code> task,
+ set <var>preservelastmodified</var> to <q>true</q> to propagate the timestamp from the
+ source file to the destination file.</p>
- This is a useful selector to work with programs and tasks that don't handle
- dependency checking properly; even if a predecessor task always creates its
- output files, followup tasks can be driven off copies made with a different
- selector, so their dependencies are driven on the absolute state of the
- files, not just a timestamp. For example: anything fetched from a web site,
- or the output of some program. To reduce the amount of checking, when using
- this task inside a <code><copy></code> task, set
- <tt>preservelastmodified</tt> to <i>true</i> to propagate the timestamp
- from the source file to the destination file.<p>
-
- The <code><different></code> selector supports the use of a
- contained <a href="mapper.html"><code><mapper></code></a> element
- to define the location of the file to be compared against. If no
- <code><mapper></code> element is specified, the
- <code>identity</code> type mapper is used.</p>
+ <p>The <code><different></code> selector supports the use of a
+ contained <a href="mapper.html"><code><mapper></code></a> element to define the
+ location of the file to be compared against. If no <code><mapper></code> element is
+ specified, the <code>identity</code> type mapper is used.</p>
- <table>
+ <table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">targetdir</td>
- <td valign="top">The base directory to look for the files to compare
- against. The precise location depends on a combination of this
- attribute and the <code><mapper></code> element, if any.
- </td>
- <td valign="top" align="center">Yes</td>
+ <td>targetdir</td>
+ <td>The base directory to look for the files to compare against. The precise location
+ depends on a combination of this attribute and the <code><mapper></code>
+ element, if any.</td>
+ <td>Yes</td>
</tr>
<tr>
- <td valign="top">ignoreFileTimes</td>
- <td valign="top">Whether to use file times in the comparison or not.
- Default is true (time differences are ignored).
- </td>
- <td valign="top" align="center">No</td>
+ <td>ignoreFileTimes</td>
+ <td>Whether to use file times in the comparison or not.</td>
+ <td>No; default is <q>true</q> (time differences are ignored)</td>
</tr>
<tr>
- <td valign="top">ignoreContents</td>
- <td valign="top">Whether to do a byte per byte compare.
- Default is false (contents are compared).
- <em>Since Ant 1.6.3</em>
- </td>
- <td valign="top" align="center">No</td>
+ <td>ignoreContents</td>
+ <td>Whether to do a byte per byte compare.
+ <em>Since Ant 1.6.3</em></td>
+ <td>No; default is <q>false</q> (contents are compared)</td>
</tr>
<tr>
- <td valign="top">granularity</td>
- <td valign="top">The number of milliseconds leeway to give before
- deciding a file is out of date. This is needed because not every
- file system supports tracking the last modified time to the
- millisecond level. Default is 0 milliseconds, or 2 seconds on DOS systems.
- </td>
- <td valign="top" align="center">No</td>
+ <td>granularity</td>
+ <td>The number of milliseconds leeway to give before deciding a file is out of
+ date. This is needed because not every file system supports tracking the last modified
+ time to the millisecond level.</td>
+ <td>No; default is 0 milliseconds, or 2 seconds on DOS systems</td>
</tr>
</table>
@@ -414,57 +351,46 @@
<fileset dir="${ant.1.5}/src/main" includes="**/*.java">
<different targetdir="${ant.1.4.1}/src/main"
ignoreFileTimes="true"/>
-</fileset>
-</pre>
+</fileset></pre>
- <p>Compares all the Java source files between the 1.4.1 and the 1.5 release
- and selects those who are different, disregarding file times.
- </p>
+ <p>Compares all the Java source files between the 1.4.1 and the 1.5 release and selects
+ those who are different, disregarding file times.</p>
<h4 id="filenameselect">Filename Selector</h4>
- <p>The <code><filename></code> tag acts like the
- <code><include></code> and <code><exclude></code>
- tags within a fileset. By using a selector instead, however,
- one can combine it with all the other selectors using whatever
- <a href="#selectcontainers">selector container</a> is desired.
- </p>
+ <p>The <code><filename></code> tag acts like the <code><include></code>
+ and <code><exclude></code> tags within a fileset. By using a selector instead,
+ however, one can combine it with all the other selectors using
+ whatever <a href="#selectcontainers">selector container</a> is desired.</p>
- <p>The <code><filename></code> selector is
- case-sensitive.</p>
+ <p>The <code><filename></code> selector is case-sensitive.</p>
- <table>
+ <table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">name</td>
- <td valign="top">The name of files to select. The name parameter
- can contain the standard Ant wildcard characters.
- </td>
- <td valign="top" align="center" rowspan="2">Exactly one of
- the two</td>
+ <td>name</td>
+ <td>The name of files to select. The name parameter can contain the standard Ant
+ wildcard characters.</td>
+ <td rowspan="2">Exactly one of the two</td>
</tr>
<tr>
- <td valign="top">regex</td>
- <td valign="top">The regular expression matching files to select.</td>
+ <td>regex</td>
+ <td class="left">The regular expression matching files to select.</td>
</tr>
<tr>
- <td valign="top">casesensitive</td>
- <td valign="top">Whether to pay attention to case when looking
- at file names. Default is "true".
- </td>
- <td valign="top" align="center">No</td>
+ <td>casesensitive</td>
+ <td>Whether to pay attention to case when looking at file names.</td>
+ <td>No; default is <q>true</q></td>
</tr>
<tr>
- <td valign="top">negate</td>
- <td valign="top">Whether to reverse the effects of this filename
- selection, therefore emulating an exclude rather than include
- tag. Default is "false".
- </td>
- <td valign="top" align="center">No</td>
+ <td>negate</td>
+ <td>Whether to reverse the effects of this filename selection, therefore emulating an
+ <code>exclude</code> rather than <code>include</code> tag.</td>
+ <td>No; default is <q>false</q></td>
</tr>
</table>
@@ -473,54 +399,48 @@
<pre>
<fileset dir="${doc.path}" includes="**/*">
<filename name="**/*.css"/>
-</fileset>
-</pre>
+</fileset></pre>
<p>Selects all the cascading style sheet files.</p>
<h4 id="presentselect">Present Selector</h4>
- <p>The <code><present></code> tag selects files
- that have an equivalent file in another directory tree.</p>
+ <p>The <code><present></code> tag selects files that have an equivalent file in
+ another directory tree.</p>
<p>The <code><present></code> tag supports the use of a
- contained <a href="mapper.html"><code><mapper></code></a> element
- to define the location of the file to be tested against. If no
- <code><mapper></code> element is specified, the
- <code>identity</code> type mapper is used.</p>
+ contained <a href="mapper.html"><code><mapper></code></a> element to define the
+ location of the file to be tested against. If no <code><mapper></code> element is
+ specified, the <code>identity</code> type mapper is used.</p>
<p>The <code><present></code> selector is case-sensitive.</p>
- <table>
+ <table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">targetdir</td>
- <td valign="top">The base directory to look for the files to compare
- against. The precise location depends on a combination of this
- attribute and the <code><mapper></code> element, if any.
- </td>
- <td valign="top" align="center">Yes</td>
+ <td>targetdir</td>
+ <td>The base directory to look for the files to compare against. The precise location
+ depends on a combination of this attribute and the <code><mapper></code>
+ element, if any.</td>
+ <td>Yes</td>
</tr>
<tr>
- <td valign="top">present</td>
- <td valign="top">Whether we are requiring that a file is present in
- the src directory tree only, or in both the src and the target
- directory tree. Valid values are:
+ <td>present</td>
+ <td>Whether we are requiring that a file is present in the source directory tree only,
+ or in both the source and the target directory tree. Valid values are:
<ul>
- <li>srconly - select files only if they are in the src
- directory tree but not in the target directory tree
- <li>both - select files only if they are present both in the
- src and target directory trees
+ <li><q>srconly</q>—select files only if they are in the source directory tree
+ but not in the target directory tree</li>
+ <li><q>both</q >-- select files only if they are present both in the source and
+ target directory trees</li>
</ul>
- Default is both. Setting this attribute to "srconly"
- is equivalent to wrapping the selector in the <code><not></code>
- selector container.
- </td>
- <td valign="top" align="center">No</td>
+ Setting this attribute to <q>srconly</q> is equivalent to wrapping the selector in
+ the <code><not></code> selector container.</td>
+ <td>No; default is <q>both</q></td>
</tr>
</table>
@@ -529,57 +449,46 @@
<pre>
<fileset dir="${ant.1.5}/src/main" includes="**/*.java">
<present present="srconly" targetdir="${ant.1.4.1}/src/main"/>
-</fileset>
-</pre>
+</fileset></pre>
- <p>Selects all the Java source files which are new in the
- 1.5 release.
- </p>
+ <p>Selects all the Java source files which are new in the 1.5 release.</p>
<h4 id="regexpselect">Regular Expression Selector</h4>
- <p>The <code><containsregexp></code> tag in a FileSet limits
- the files defined by that fileset to only those which contents contain a
- match to the regular expression specified by the <code>expression</code> attribute.
- </p>
- <p>The <code><containsregexp></code> selector can be used as a
- ResourceSelector (see the
- <a href="resources.html#restrict"><restrict></a>
- ResourceCollection).</p>
+ <p>The <code><containsregexp></code> tag in a FileSet limits the files defined by that
+ fileset to only those which contents contain a match to the regular expression specified by
+ the <code>expression</code> attribute.</p>
- <table>
+ <p>The <code><containsregexp></code> selector can be used as a ResourceSelector (see
+ the <a href="resources.html#restrict"><restrict></a> ResourceCollection).</p>
+
+ <table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">expression</td>
- <td valign="top">Specifies the regular expression that must
- match true in every file</td>
- <td valign="top" align="center">Yes</td>
+ <td>expression</td>
+ <td>Specifies the regular expression that must match true in every file</td>
+ <td>Yes</td>
</tr>
<tr>
- <td valign="top">casesensitive</td>
- <td valign="top">Perform a case sensitive match. Default is
- true. <em>Since Ant 1.8.2</em></td>
- <td valign="top" align="center">No</td>
+ <td>casesensitive</td>
+ <td>Perform a case sensitive match. <em>Since Ant 1.8.2</em></td>
+ <td>No; default is <q>true</q></td>
</tr>
<tr>
- <td valign="top">multiline</td>
- <td valign="top">
- Perform a multi line match.
- Default is false. <em>Since Ant 1.8.2</em></td>
- <td valign="top" align="center">No</td>
+ <td>multiline</td>
+ <td>Perform a multi line match. <em>Since Ant 1.8.2</em></td>
+ <td>No; default is <q>false</q></td>
</tr>
<tr>
- <td valign="top">singleline</td>
- <td valign="top">
- This allows '.' to match new lines.
- SingleLine is not to be confused with multiline, SingleLine is a perl
- regex term, it corresponds to dotall in java regex.
- Default is false. <em>Since Ant 1.8.2</em></td>
- <td valign="top" align="center">No</td>
+ <td>singleline</td>
+ <td>This allows <q>.</q> to match new lines. SingleLine is not to be confused with
+ multiline, SingleLine is a perl regex term, it corresponds to dotall in Java regex.
+ <em>Since Ant 1.8.2</em></td>
+ <td>No; default is <q>false</q></td>
</tr>
</table>
@@ -588,56 +497,48 @@
<pre>
<fileset dir="${doc.path}" includes="*.txt">
<containsregexp expression="[4-6]\.[0-9]"/>
-</fileset>
-</pre>
+</fileset></pre>
- <p>Selects all the text files that match the regular expression
- (have a 4,5 or 6 followed by a period and a number from 0 to 9).
+ <p>Selects all the text files that match the regular expression (have a 4, 5 or 6 followed
+ by a period and a number from 0 to 9).
<h4 id="sizeselect">Size Selector</h4>
- <p>The <code><size></code> tag in a FileSet will put
- a limit on the files specified by the include tag, so that tags
- which do not meet the size limits specified by the selector will not
- end up being selected.</p>
+ <p>The <code><size></code> tag in a FileSet will put a limit on the files specified by
+ the include tag, so that tags which do not meet the size limits specified by the selector
+ will not end up being selected.</p>
- <table>
+ <table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">value</td>
- <td valign="top">The size of the file which should be tested for.
- </td>
- <td valign="top" align="center">Yes</td>
- </tr>
- <tr>
- <td valign="top">units</td>
- <td valign="top">The units that the <code>value</code> attribute
- is expressed in. When using the standard single letter SI
- designations, such as "k","M", or
- "G", multiples of 1000 are used. If you want to use
- power of 2 units, use the IEC standard: "Ki" for 1024,
- "Mi" for 1048576, and so on. The default is no units,
- which means the <code>value</code> attribute expresses the exact
- number of bytes.
+ <td>value</td>
+ <td>The size of the file which should be tested for.
</td>
- <td valign="top" align="center">No</td>
+ <td>Yes</td>
+ </tr>
+ <tr>
+ <td>units</td>
+ <td>The units that the <code>value</code> attribute is expressed in. When using the
+ standard single letter SI designations, such as <q>k</q>, <q>M</q>, or <q>G</q>,
+ multiples of 1000 are used. If you want to use power of 2 units, use the IEC
+ standard: <q>Ki</q> for 1024, <q>Mi</q> for 1048576, and so on. The default is no units,
+ which means the <var>value</var> attribute expresses the exact number of bytes.</td>
+ <td>No</td>
</tr>
<tr>
- <td valign="top">when</td>
- <td valign="top">Indicates how to interpret the size, whether
- the files to be selected should be larger, smaller, or equal to
- that value. Acceptable values for this attribute are:
+ <td>when</td>
+ <td>Indicates how to interpret the size, whether the files to be selected should be
+ larger, smaller, or equal to that value. Acceptable values for this attribute are:
<ul>
- <li>less - select files less than the indicated size
- <li>more - select files greater than the indicated size
- <li>equal - select files this exact size
- </ul>
- The default is equal.
- <td valign="top" align="center">No</td>
+ <li><q>less</q>—select files less than the indicated size</li>
+ <li><q>more</q>—select files greater than the indicated size</li>
+ <li><q>equal</q>—select files this exact size</li>
+ </ul></td>
+ <td>No; default is <q>equal</q></td>
</tr>
</table>
@@ -649,606 +550,549 @@
<include name="**/*.jar"/>
</patternset>
<size value="4" units="Ki" when="more"/>
-</fileset>
-</pre>
+</fileset></pre>
<p>Selects all JAR files that are larger than 4096 bytes.</p>
<h4 id="typeselect">Type Selector</h4>
- <p>The <code><type></code> tag selects files of a certain type:
- directory or regular.</p>
+ <p>The <code><type></code> tag selects files of a certain type: directory or
+ regular.</p>
- <table>
+ <table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">type</td>
- <td valign="top">The type of file which should be tested for.
- Acceptable values are:
- <ul>
- <li>file - regular files</li>
- <li>dir - directories</li>
- </ul>
- </td>
- <td valign="top" align="center">Yes</td>
+ <td>type</td>
+ <td>The type of file which should be tested for. Acceptable values are:
+ <ul>
+ <li><q>file</q>—regular files</li>
+ <li><q>dir</q>—directories</li>
+ </ul></td>
+ <td>Yes</td>
</tr>
</table>
- <p>Here is an example of how to use the Type Selector to select only
- directories in <code>${src}</code></p>
+ <p>Here is an example of how to use the Type Selector to select only directories
+ in <code>${src}</code></p>
<pre>
<fileset dir="${src}">
<type type="dir"/>
-</fileset>
-</pre>
+</fileset></pre>
- <p>The Type Selector is often used in conjunction with other selectors.
- For example, to select files that also exist in a <code>template</code>
- directory, but avoid selecting empty directories, use:
+ <p>The Type Selector is often used in conjunction with other selectors. For example, to
+ select files that also exist in a <samp>template</samp> directory, but avoid selecting empty
+ directories, use:</p>
-<pre>
+ <pre>
<fileset dir="${src}">
<and>
<present targetdir="template"/>
<type type="file"/>
</and>
-</fileset>
-</pre>
+</fileset></pre>
<h4 id="modified">Modified Selector</h4>
- <p>The <code><modified></code> selector computes a value for a file, compares that
- to the value stored in a cache and select the file, if these two values
- differ.</p>
+ <p>The <code><modified></code> selector computes a value for a file, compares that to
+ the value stored in a cache and select the file, if these two values differ.</p>
<p>Because this selector is highly configurable the order in which the selection is done
- is: <ol>
- <li>get the absolute path for the file</li>
- <li>get the cached value from the configured cache (absolute path as key)</li>
- <li>get the new value from the configured algorithm</li>
- <li>compare these two values with the configured comparator</li>
- <li>update the cache if needed and requested</li>
- <li>do the selection according to the comparison result</li>
- </ol>
- <p>The comparison, computing of the hashvalue and the store is done by implementation
- of special interfaces. Therefore they may provide additional parameters.</p>
-
- <p>The <code><modified></code> selector can be used as a
- ResourceSelector (see the
- <a href="resources.html#restrict"><restrict></a>
- ResourceCollection).
- In that case it maps simple file resources to files and does its job. If the
- resource is from another type, the <code><modified></code> selector tries
- to (<b>attention!</b>) copy the content into a local file for computing the
+ is:</p>
+ <ol>
+ <li>get the absolute path for the file</li>
+ <li>get the cached value from the configured cache (absolute path as key)</li>
+ <li>get the new value from the configured algorithm</li>
+ <li>compare these two values with the configured comparator</li>
+ <li>update the cache if needed and requested</li>
+ <li>do the selection according to the comparison result</li>
+ </ol>
+ <p>The comparison, computing of the hashvalue and the store is done by implementation of
+ special interfaces. Therefore they may provide additional parameters.</p>
+
+ <p>The <code><modified></code> selector can be used as a ResourceSelector (see
+ the <a href="resources.html#restrict"><restrict></a> ResourceCollection). In that
+ case it maps simple file resources to files and does its job. If the resource is from
+ another type, the <code><modified></code> selector tries to
+ (<strong>attention!</strong>) copy the content into a local file for computing the
hashvalue.</p>
- <table>
+ <table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">algorithm</td>
- <td valign="top">The type of algorithm should be used.
- Acceptable values are (further information see later):
- <ul>
- <li>hashvalue - HashvalueAlgorithm</li>
- <li>digest - DigestAlgorithm</li>
- <li>checksum - ChecksumAlgorithm</li>
- </ul>
+ <td>algorithm</td>
+ <td>The type of algorithm should be used. Acceptable values are (further information
+ see later):
+ <ul>
+ <li><q>hashvalue</q>—HashvalueAlgorithm</li>
+ <li><q>digest</q>—DigestAlgorithm</li>
+ <li><q>checksum</q>—ChecksumAlgorithm</li>
+ </ul>
</td>
- <td valign="top" align="center">No, defaults to <i>digest</i></td>
+ <td>No; defaults to <q>digest</q></td>
</tr>
<tr>
- <td valign="top">cache</td>
- <td valign="top">The type of cache should be used.
- Acceptable values are (further information see later):
- <ul>
- <li>propertyfile - PropertyfileCache</li>
- </ul>
+ <td>cache</td>
+ <td>The type of cache should be used. Acceptable values are (further information see
+ later):
+ <ul>
+ <li><q>propertyfile</q>—PropertyfileCache</li>
+ </ul>
</td>
- <td valign="top" align="center">No, defaults to <i>propertyfile</i></td>
- </tr>
- <tr>
- <td valign="top">comparator</td>
- <td valign="top">The type of comparator should be used.
- Acceptable values are (further information see later):
- <ul>
- <li>equal - EqualComparator</li>
- <li>rule - java.text.RuleBasedCollator
- <!-- NOTE -->
- <i>(see <a href="#ModSelNote">note</a> for restrictions)</i></li>
- </ul>
+ <td>No; defaults to <q>propertyfile</q></td>
+ </tr>
+ <tr>
+ <td>comparator</td>
+ <td>The type of comparator should be used. Acceptable values are:
+ <ul>
+ <li><q>equal</q>—EqualComparator</li>
+ <li><q>rule</q>—java.text.RuleBasedCollator
+ <!-- NOTE -->
+ <em>(see <a href="#ModSelNote">note</a> for restrictions)</em></li>
+ </ul>
</td>
- <td valign="top" align="center">No, defaults to <i>equal</i></td>
+ <td>No; defaults to <q>equal</q></td>
</tr>
<tr>
- <td valign="top">algorithmclass</td>
- <td valign="top">Classname of custom algorithm implementation. Lower
- priority than <i>algorithm</i>.</td>
- <td valign="top" align="center">No</td>
+ <td>algorithmclass</td>
+ <td>Classname of custom algorithm implementation. Lower priority
+ than <var>algorithm</var>.</td>
+ <td>No</td>
</tr>
<tr>
- <td valign="top">cacheclass</td>
- <td valign="top">Classname of custom cache implementation. Lower
- priority than <i>cache</i>.</td>
- <td valign="top" align="center"> No</td>
+ <td>cacheclass</td>
+ <td>Classname of custom cache implementation. Lower priority than <var>cache</var>.</td>
+ <td>No</td>
</tr>
<tr>
- <td valign="top">comparatorclass</td>
- <td valign="top">Classname of custom comparator implementation. Lower
- priority than <i>comparator</i>.</td>
- <td valign="top" align="center"> No</td>
+ <td>comparatorclass</td>
+ <td>Classname of custom comparator implementation. Lower priority
+ than <var>comparator</var>.</td>
+ <td>No</td>
</tr>
<tr>
- <td valign="top">update</td>
- <td valign="top">Should the cache be updated when values differ? (boolean)</td>
- <td valign="top" align="center"> No, defaults to <i>true</i></td>
+ <td>update</td>
+ <td>Should the cache be updated when values differ? (boolean)</td>
+ <td>No; defaults to <q>true</q></td>
</tr>
<tr>
- <td valign="top">seldirs</td>
- <td valign="top">Should directories be selected? (boolean)</td>
- <td valign="top" align="center"> No, defaults to <i>true</i></td>
+ <td>seldirs</td>
+ <td>Should directories be selected? (boolean)</td>
+ <td>No; defaults to <q>true</q></td>
</tr>
<tr>
- <td valign="top">selres</td>
- <td valign="top">Should Resources without an InputStream, and
- therefore without checking, be selected? (boolean)</td>
- <td valign="top" align="center"> No, defaults to <i>true</i>. Only relevant
- when used as ResourceSelector.</td>
+ <td>selres</td>
+ <td>Should Resources without an InputStream, and therefore without checking, be
+ selected? (boolean)</td>
+ <td>No; defaults to <q>true</q>. Only relevant when used as ResourceSelector.</td>
</tr>
<tr>
- <td valign="top">delayupdate</td>
- <td valign="top">If set to <i>true</i>, the storage of the cache will be delayed until the
- next finished BuildEvent; task finished, target finished or build finished,
- whichever comes first. This is provided for increased performance. If set
- to <i>false</i>, the storage of the cache will happen with each change. This
- attribute depends upon the <i>update</i> attribute. (boolean)</td>
- <td valign="top" align="center"> No, defaults to <i>true</i></td>
+ <td>delayupdate</td>
+ <td>If set to <q>true</q>, the storage of the cache will be delayed until the next
+ finished BuildEvent; task finished, target finished or build finished, whichever comes
+ first. This is provided for increased performance. If set to <q>false</q>, the
+ storage of the cache will happen with each change. This attribute depends upon
+ the <var>update</var> attribute. (boolean)</td>
+ <td>No; defaults to <q>true</q></td>
</tr>
</table>
<h5>Parameters specified as nested elements</h5>
- <p>The <code><modified></code> selector supports a nested
- <code><classpath></code> element that represents a <a href="../using.html#path">
- PATH like structure</a> for finding custom interface implementations.</p>
+ <p>The <code><modified></code> selector supports a
+ nested <code><classpath></code> element that represents
+ a <a href="../using.html#path">path-like structure</a> for finding custom interface
+ implementations.</p>
<p>All attributes of a <code><modified></code> selector an be set with
nested <code><param/></code> tags. Additional values can be set
with <code><param/></code> tags according to the rules below.</p>
<h6>algorithm</h6>
- Same as algorithm attribute, with the following additional values:
+ <p>Same as <var>algorithm</var> attribute, with the following additional values:</p>
<table>
<tr>
- <td valign="top"><b>Name</b></td>
- <td valign="top"><b>Description</b></td>
+ <th>Name</th>
+ <th>Description</th>
</tr>
<tr>
- <td valign="top">hashvalue</td>
- <td valign="top">Reads the content of a file into a java.lang.String
- and use that hashValue(). No additional configuration required.</td>
- </tr>
- <tr>
- <td valign="top">digest</td>
- <td valign="top">Uses java.security.MessageDigest. This Algorithm supports
- the following attributes:
- <ul>
- <li><i>algorithm.algorithm</i> (optional): Name of the Digest algorithm
- (e.g. 'MD5' or 'SHA', default = <i>MD5</i>)</li>
- <li><i>algorithm.provider</i> (optional): Name of the Digest provider
- (default = <i>null</i>)</li>
- </ul>
- </td>
+ <td>hashvalue</td>
+ <td>Reads the content of a file into a <code>java.lang.String</code> and uses
+ that <code>hashValue()</code>. No additional configuration required.</td>
</tr>
<tr>
- <td valign="top">checksum</td>
- <td valign="top">Uses java.util.zip.Checksum. This Algorithm supports
- the following attributes:
+ <td>digest</td>
+ <td>Uses <code>java.security.MessageDigest</code>. This Algorithm supports the following
+ attributes:
<ul>
- <li><i>algorithm.algorithm</i> (optional): Name of the algorithm
- (e.g. 'CRC' or 'ADLER', default = <i>CRC</i>)</li>
+ <li><var>algorithm.algorithm</var> (optional): Name of the Digest algorithm
+ (e.g. <q>MD5</q> or <q>SHA</q>); default is <q>MD5</q></li>
+ <li><var>algorithm.provider</var> (optional): Name of the Digest provider; default
+ is <q>null</q></li>
</ul>
</td>
</tr>
+ <tr>
+ <td>checksum</td>
+ <td>Uses <code>java.util.zip.Checksum</code>. This Algorithm supports the following
+ attributes:
+ <ul>
+ <li><var>algorithm.algorithm</var> (optional): Name of the algorithm (e.g. <q>CRC</q>
+ or <q>ADLER</q>); default is <q>CRC</q>)</li>
+ </ul>
+ </td>
+ </tr>
</table>
<h6>cache</h6>
- Same as cache attribute, with the following additional values:
+ <p>Same as <var>cache</var> attribute, with the following additional values:</p>
<table>
<tr>
- <td valign="top"><b>Name</b></td>
- <td valign="top"><b>Description</b></td>
- </tr>
- <tr>
- <td valign="top">propertyfile</td>
- <td valign="top">Use the java.util.Properties class and its possibility
- to load and store to file.
- This Cache implementation supports the following attributes:
- <ul>
- <li><i>cache.cachefile</i> (optional): Name of the properties-file
- (default = <i>cache.properties</i>)</li>
- </ul>
- </td>
- </tr>
+ <th>Name</th>
+ <th>Description</th>
+ </tr>
+ <tr>
+ <td>propertyfile</td>
+ <td>Use the <code>java.util.Properties</code> class and its possibility to load and store
+ to file. This Cache implementation supports the following attributes:
+ <ul>
+ <li><var>cache.cachefile</var> (optional): Name of the properties file; default
+ is <q>cache.properties</q></li>
+ </ul>
+ </td>
+ </tr>
</table>
<h6>comparator</h6>
- Same as comparator attribute.
+ <p>Same as <var>comparator</var> attribute.</p>
<h6>algorithmclass</h6>
- Same as algorithmclass attribute.
+ <p>Same as <var>algorithmclass</var> attribute.</p>
<h6>comparatorclass</h6>
- Same as comparatorclass attribute.
+ <p>Same as <var>comparatorclass</var> attribute.</p>
<h6>cacheclass</h6>
- Same as cacheclass attribute.
+ <p>Same as <var>cacheclass</var> attribute.</p>
<h6>update</h6>
- Same as update attribute.
+ <p>Same as <var>update</var> attribute.</p>
<h6>seldirs</h6>
- Same as comparatorclass attribute.
+ <p>Same as <var>comparatorclass</var> attribute.</p>
<h5>Examples</h5>
<p>Here are some examples of how to use the Modified Selector:</p>
<pre>
- <copy todir="dest">
- <fileset dir="src">
- <modified/>
- </fileset>
- </copy>
- </pre>
- <p>This will copy all files from <i>src</i> to <i>dest</i> which content has changed.
- Using an updating PropertyfileCache with cache.properties and
+<copy todir="dest">
+ <fileset dir="src">
+ <modified/>
+ </fileset>
+</copy></pre>
+
+ <p>This will copy all files from <samp>src</samp> to <samp>dest</samp> which content has
+ changed. Using an updating PropertyfileCache with <samp>cache.properties</samp> and
MD5-DigestAlgorithm.</p>
<pre>
- <copy todir="dest">
- <fileset dir="src">
- <modified update="true"
- seldirs="true"
- cache="propertyfile"
- algorithm="digest"
- comparator="equal">
- <param name="cache.cachefile" value="cache.properties"/>
- <param name="algorithm.algorithm" value="MD5"/>
- </modified>
- </fileset>
- </copy>
- </pre>
- <p>This is the same example rewritten as CoreSelector with setting the all the values
- (same as defaults are).</p>
+<copy todir="dest">
+ <fileset dir="src">
+ <modified update="true"
+ seldirs="true"
+ cache="propertyfile"
+ algorithm="digest"
+ comparator="equal">
+ <param name="cache.cachefile" value="cache.properties"/>
+ <param name="algorithm.algorithm" value="MD5"/>
+ </modified>
+ </fileset>
+</copy></pre>
+
+ <p>This is the same example rewritten as CoreSelector with setting the all the values (same
+ as defaults are).</p>
+
+ <pre>
+<copy todir="dest">
+ <fileset dir="src">
+ <custom class="org.apache.tools.ant.types.selectors.modifiedselector.ModifiedSelector">
+ <param name="update" value="true"/>
+ <param name="seldirs" value="true"/>
+ <param name="cache" value="propertyfile"/>
+ <param name="algorithm" value="digest"/>
+ <param name="comparator" value="equal"/>
+ <param name="cache.cachefile" value="cache.properties"/>
+ <param name="algorithm.algorithm" value="MD5"/>
+ </custom>
+ </fileset>
+</copy></pre>
+
+ <p>And this is the same rewritten as CustomSelector.</p>
<pre>
- <copy todir="dest">
- <fileset dir="src">
- <custom class="org.apache.tools.ant.types.selectors.modifiedselector.ModifiedSelector">
- <param name="update" value="true"/>
- <param name="seldirs" value="true"/>
- <param name="cache" value="propertyfile"/>
- <param name="algorithm" value="digest"/>
- <param name="comparator" value="equal"/>
- <param name="cache.cachefile" value="cache.properties"/>
- <param name="algorithm.algorithm" value="MD5"/>
- </custom>
+<target name="generate-and-upload-site">
+ <echo> generate the site using forrest </echo>
+ <antcall target="site"/>
+
+ <echo> upload the changed file </echo>
+ <ftp server="${ftp.server}" userid="${ftp.user}" password="${ftp.pwd}">
+ <fileset dir="htdocs/manual">
+ <modified/>
</fileset>
- </copy>
- </pre>
- <p>And this is the same rewritten as CustomSelector.</p>
+ </ftp>
+</target></pre>
+
+ <p>A useful scenario for this selector inside a build environment for homepage generation
+ (e.g. with <a href="https://forrest.apache.org/">Apache Forrest</a>). Here
+ all <strong>changed</strong> files are uploaded to the server. The CacheSelector saves
+ therefore much upload time.</p>
+
+ <pre>
+<modified cacheclassname="com.mycompany.MyCache">
+ <classpath>
+ <pathelement location="lib/mycompany-antutil.jar"/>
+ </classpath>
+</modified></pre>
+
+ <p>Uses <code>com.mycompany.MyCache</code> from a jar outside of Ant's own classpath as
+ cache implementation</p>
+
+ <h4 id="ModSelNote">Note on RuleBasedCollator</h4>
+ <p>The RuleBasedCollator needs a format for its work, but its needed while
+ instantiation. There is a problem in the initialization algorithm for this case. Therefore
+ you should not use this (or tell me the workaround :-).</p>
+
+ <h4 id="signedselector">Signed Selector</h4>
+
+ <p>The <code><signedselector></code> tag selects signed files and optionally signed
+ with a certain name.</p>
+ <p><em>Since Apache Ant 1.7</em></p>
+ <table class="attr">
+ <tr>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
+ </tr>
+ <tr>
+ <td>name</td>
+ <td>The signature name to check for.</td>
+ <td>No</td>
+ </tr>
+ </table>
+
+ <h4 id="readable">Readable Selector</h4>
+
+ <p>The <code><readable></code> selector selects only files that are readable. Ant
+ only invokes <code>java.io.File#canRead</code> so if a file is unreadable but JVM cannot
+ detect this state, this selector will still select the file.</p>
+
+ <h4 id="writable">Writable Selector</h4>
+
+ <p>The <code><writable></code> selector selects only files that are writable. Ant
+ only invokes <code>java.io.File#canWrite</code> so if a file is nonwritable but JVM cannot
+ detect this state, this selector will still select the file.</p>
+
+ <h4 id="executable">Executable Selector</h4>
+
+ <p>The <code><executable></code> selector selects only files that are executable. Ant
+ only invokes <code>java.nio.file.Files#isExecutable</code> so if a file is not executable
+ but JVM cannot detect this state, this selector will still select the file.</p>
+
+ <p><em>Since Ant 1.10.0</em></p>
+
+ <h4 id="symlink">Symlink Selector</h4>
+
+ <p>The <code><symlink></code> selector selects only files that are symbolic links.
+ Ant only invokes <code>java.nio.file.Files#isSymbolicLink</code> so if a file is a symbolic
+ link but JVM cannot detect this state, this selector will not select the file.</p>
+
+ <p><em>Since Ant 1.10.0</em></p>
+
+ <h4 id="ownedBy">OwnedBy Selector</h4>
+
+ <p>The <code><ownedBy></code> selector selects only files that are owned by the given
+ user. Ant only invokes <code>java.nio.file.Files#getOwner</code> so if a file system
+ doesn't support the operation this selector will not select the file.</p>
+
+ <p><em>Since Ant 1.10.0</em></p>
+
+ <table class="attr">
+ <tr>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
+ </tr>
+ <tr>
+ <td>owner</td>
+ <td>Username of the expected owner</td>
+ <td>Yes</td>
+ </tr>
+ </table>
+
+ <h4 id="scriptselector">Script Selector</h4>
+
+ <p>The <code><scriptselector></code> element enables you to write a complex selection
+ algorithm in any <a href="https://jakarta.apache.org/bsf" target="_top">Apache BSF</a>
+ or <a href="https://jcp.org/aboutJava/communityprocess/maintenance/jsr223/223ChangeLog.html">JSR
+ 223</a> supported language. See the <a href="../Tasks/script.html">Script</a> task for an
+ explanation of scripts and dependencies.</p>
+ <p><em>Since Apache Ant 1.7</em></p>
+ <table class="attr">
+ <tr>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
+ </tr>
+ <tr>
+ <td>language</td>
+ <td>language of the script.</td>
+ <td>Yes</td>
+ </tr>
+ <tr>
+ <td>manager</td>
+ <td>The script engine manager to use. See the <a href="../Tasks/script.html">script</a>
+ task for using this attribute.</td>
+ <td>No; default is <q>auto</q></td>
+ </tr>
+ <tr>
+ <td>src</td>
+ <td>filename of the script</td>
+ <td>No</td>
+ </tr>
+ <tr>
+ <td>encoding</td>
+ <td>The encoding of the script as a file. <em>since Ant 1.10.2</em></td>
+ <td>No; defaults to default JVM character encoding</td>
+ </tr>
+ <tr>
+ <td>setbeans</td>
+ <td>Whether to have all properties, references and targets as global variables in the
+ script.</td>
+ <td>No; default is <q>true</q></td>
+ </tr>
+ <tr>
+ <td>classpath</td>
+ <td>The classpath to pass into the script.</td>
+ <td>No</td>
+ </tr>
+ <tr>
+ <td>classpathref</td>
+ <td>The classpath to use, given as a <a href="../using.html#references">reference</a> to
+ a path defined elsewhere.
+ <td>No</td>
+ </tr>
+ </table>
+ <p>This selector can take a nested <code><classpath></code> element. See
+ the <a href="../Tasks/script.html">script</a> task on how to use this element.</p>
+ <p>If no <var>src</var> attribute is supplied, the script must be nested inside the selector
+ declaration.</p>
+ <p>The embedded script is invoked for every test, with the bean <code>self</code> is bound
+ to the selector. It has an attribute <var>selected</var> which can be set
+ using <code>setSelected(boolean)</code> to select a file.</p>
+
+ <p>The following beans are configured for every script, alongside the classic set of
+ project, properties, and targets.</p>
+
+ <table>
+ <tr>
+ <th>Bean</th>
+ <th>Description</th>
+ <th>Type</th>
+ </tr>
+ <tr>
+ <td>self</td>
+ <td>selector instance</td>
+ <td>org.apache.tools.ant.types.optional</td>
+ </tr>
+ <tr>
+ <td>filename</td>
+ <td>filename of the selection</td>
+ <td>String</td>
+ </tr>
+ <tr>
+ <td>file</td>
+ <td>file of the selection</td>
+ <td>java.io.File</td>
+ </tr>
+ <tr>
+ <td>basedir</td>
+ <td>Fileset base directory</td>
+ <td>java.io.File</td>
+ </tr>
+ </table>
+ <p>The <code>self</code> bean maps to the selector, which has the following attributes. Only
+ the <var>selected</var> flag is writable, the rest are read only via their getter methods.</p>
+ <table class="attr">
+ <tr>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Type</th>
+ </tr>
+ <tr>
+ <td>selected</td>
+ <td>writeable flag to select this file</td>
+ <td>boolean</td>
+ </tr>
+ <tr>
+ <td>filename</td>
+ <td>filename of the selection</td>
+ <td>String</td>
+ </tr>
+ <tr>
+ <td>file</td>
+ <td>file of the selection</td>
+ <td>java.io.File</td>
+ </tr>
+ <tr>
+ <td>basedir</td>
+ <td>Fileset base directory</td>
+ <td>java.io.File</td>
+ </tr>
+ </table>
+
+ <p>Example</p>
<pre>
- <target name="generate-and-upload-site">
- <echo> generate the site using forrest </echo>
- <antcall target="site"/>
-
- <echo> upload the changed file </echo>
- <ftp server="${ftp.server}" userid="${ftp.user}" password="${ftp.pwd}">
- <fileset dir="htdocs/manual">
- <modified/>
- </fileset>
- </ftp>
- </target>
- </pre>
- <p>A useful scenario for this selector inside a build environment
- for homepage generation (e.g. with <a href="http://xml.apache.org/forrest/">
- Apache Forrest</a>). Here all <b>changed</b> files are uploaded to the server. The
- CacheSelector saves therefore much upload time.</p>
+<scriptselector language="javascript">
+ self.setSelected(true);
+</scriptselector></pre>
+ <p>Selects every file.</p>
<pre>
- <modified cacheclassname="com.mycompany.MyCache">
- <classpath>
- <pathelement location="lib/mycompany-antutil.jar"/>
- </classpath>
- </modified>
- </pre>
- <p>Uses <tt>com.mycompany.MyCache</tt> from a jar outside of Ants own classpath
- as cache implementation</p>
-
- <h4 id="ModSelNote">Note on RuleBasedCollator</h4>
- <p>The RuleBasedCollator needs a format for its work, but its needed while
- instantiation. There is a problem in the initialization algorithm for this
- case. Therefore you should not use this (or tell me the workaround :-).</p>
-
- <h4 id="signedselector">Signed Selector</h4>
-
- <p>
- The <code><signedselector></code> tag selects signed files and optionally
- signed with a certain name.
- </p>
- <p>
- This selector has been added in Apache Ant 1.7.
- </p>
- <table>
- <tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
- </tr>
- <tr>
- <td valign="top">name</td>
- <td valign="top">The signature name to check for.</td>
- <td valign="top" align="center">no</td>
- </tr>
- </table>
-
- <h4 id="readable">Readable Selector</h4>
-
- <p>The <code><readable></code> selector selects only files
- that are readable. Ant only invokes
- <code>java.io.File#canRead</code> so if a file is unreadable
- but the Java VM cannot detect this state, this selector will
- still select the file.</p>
-
- <h4 id="writable">Writable Selector</h4>
-
- <p>The <code><writable></code> selector selects only files
- that are writable. Ant only invokes
- <code>java.io.File#canWrite</code> so if a file is nonwritable
- but the Java VM cannot detect this state, this selector will
- still select the file.</p>
-
- <h4 id="executable">Executable Selector</h4>
-
- <p>The <code><executable></code> selector selects only files
- that are executable. Ant only invokes
- <code>java.nio.file.Files#isExecutable</code> so if a file is not executable
- but the Java VM cannot detect this state, this selector will
- still select the file.</p>
-
- <p><em>Since Ant 1.10.0</em></p>
-
- <h4 id="symlink">Symlink Selector</h4>
-
- <p>The <code><symlink></code> selector selects only files
- that are symbolic links. Ant only invokes
- <code>java.nio.file.Files#isSymbolicLink</code> so if a file
- is a symbolic link but the Java VM cannot detect this state,
- this selector will not select the file.</p>
-
- <p><em>Since Ant 1.10.0</em></p>
-
- <h4 id="ownedBy">OwnedBy Selector</h4>
-
- <p>The <code><ownedBy></code> selector selects only files
- that are owned by the given user. Ant only invokes
- <code>java.nio.file.Files#getOwner</code> so if a file system
- doesn't support the operation this selector will not select
- the file.</p>
-
- <p><em>Since Ant 1.10.0</em></p>
-
- <table>
- <tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
- </tr>
- <tr>
- <td valign="top">owner</td>
- <td valign="top">Username of the expected owner</td>
- <td valign="top" align="center">yes</td>
- </tr>
- </table>
-
- <h4 id="scriptselector">Script Selector</h4>
-
- <p>
- The <code><scriptselector></code> element enables you
- to write a complex selection algorithm in any
- <a href="http://jakarta.apache.org/bsf" target="_top">Apache BSF</a>
- or
- <a href="https://scripting.dev.java.net">JSR 223</a>
- supported language.
- See the <a href="../Tasks/script.html">Script</a> task for
- an explanation of scripts and dependencies.
- </p>
- <p>
- This selector was added in Apache Ant 1.7.
- </p>
- <table>
- <tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
- </tr>
- <tr>
- <td valign="top">language</td>
- <td valign="top">language of the script.</td>
- <td valign="top" align="center">yes</td>
- </tr>
- <tr>
- <td valign="top">manager</td>
- <td valign="top">
- The script engine manager to use.
- See the <a href="../Tasks/script.html">script</a> task
- for using this attribute.
- </td>
- <td valign="top" align="center">No - default is "auto"</td>
- </tr>
- <tr>
- <td valign="top">src</td>
- <td valign="top">filename of the script</td>
- <td valign="top" align="center">no</td>
- </tr>
- <tr>
- <td valign="top">encoding</td>
- <td valign="top">The encoding of the script as a file. <em>since Ant 1.10.2</em></td>
- <td valign="top" align="center">No - defaults to default JVM encoding</td>
- </tr>
- <tr>
- <td valign="top">setbeans</td>
- <td valign="top">whether to have all properties, references and targets as
- global variables in the script.</td>
- <td valign="top" align="center">No, default is "true".</td>
- </tr>
- <tr>
- <td valign="top">classpath</td>
- <td valign="top">
- The classpath to pass into the script.
- </td>
- <td align="center" valign="top">No</td>
- </tr>
- <tr>
- <td valign="top">classpathref</td>
- <td valign="top">The classpath to use, given as a
- <a href="../using.html#references">reference</a> to a path defined elsewhere.
- <td align="center" valign="top">No</td>
- </tr>
- </table>
- <p>
- This selector can take a nested <classpath> element.
- See the <a href="../Tasks/script.html">script</a> task
- on how to use this element.
- </p>
- <p>
- If no <code>src</code> attribute is supplied, the script must be nested
- inside the selector declaration.
- </p>
- <p>The embedded script is invoked for every test, with
- the bean <code>self</code>
- is bound to the selector. It has an attribute <code>selected</code>
- must can be set using <code>setSelected(boolean)</code> to select that
- file.
-
- <p>
-
- The following beans are configured for every script, alongside
- the classic set of project, properties, and targets.
-
- <table>
- <tr>
- <td valign="top"><b>Bean</b></td>
- <td valign="top"><b>Description</b></td>
- <td valign="top"><b>Type</b></td>
- </tr>
- <tr>
- <td valign="top">self</td>
- <td valign="top">selector instance</td>
- <td valign="top">org.apache.tools.ant.types.optional</td>
- </tr>
- <tr>
- <td valign="top">filename</td>
- <td valign="top">filename of the selection</td>
- <td valign="top" >String</td>
- </tr>
- <tr>
- <td valign="top">file</td>
- <td valign="top">file of the selection</td>
- <td valign="top" >java.io.File</td>
- </tr>
- <tr>
- <td valign="top">basedir</td>
- <td valign="top">Fileset base directory</td>
- <td valign="top" >java.io.File</td>
- </tr>
-
- </table>
- <p>
- The <code>self</code> bean maps to the selector, which has the following
- attributes. Only the <code>selected</code> flag is writable, the rest
- are read only via their getter methods.
-
- <table>
- <tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Type</b></td>
- </tr>
- <tr>
- <td valign="top">selected</td>
- <td valign="top">writeable flag to select this file</td>
- <td valign="top" align="center">boolean</td>
- </tr>
- <tr>
- <td valign="top">filename</td>
- <td valign="top">filename of the selection</td>
- <td valign="top" >String</td>
- </tr>
- <tr>
- <td valign="top">file</td>
- <td valign="top">file of the selection</td>
- <td valign="top" >java.io.File</td>
- </tr>
- <tr>
- <td valign="top">basedir</td>
- <td valign="top">Fileset base directory</td>
- <td valign="top" >java.io.File</td>
- </tr>
- </table>
-
- <p>
- Example
- </p>
-<pre>
- <scriptselector language="javascript">
- self.setSelected(true);
- </scriptselector>
-</pre>
- <p>
- Selects every file.
- </p>
-
-<pre>
- <scriptselector language="javascript">
- self.setSelected((filename.length%2)==0);
- </scriptselector>
-</pre>
-Select files whose filename length is even.
+<scriptselector language="javascript">
+ self.setSelected((filename.length%2)==0);
+</scriptselector></pre>
+ <p>Select files whose filename length is even.</p>
<h3 id="selectcontainers">Selector Containers</h3>
- <p>To create more complex selections, a variety of selectors that
- contain other selectors are available for your use. They combine the
- selections of their child selectors in various ways.</p>
+ <p>To create more complex selections, a variety of selectors that contain other selectors
+ are available for your use. They combine the selections of their child selectors in various
+ ways.</p>
<p>The selector containers are:</p>
<ul>
- <li><a href="#andselect"><code><and></code></a> - select a file only if all
- the contained selectors select it.
- <li><a href="#majorityselect"><code><majority></code></a> - select a file
- if a majority of its selectors select it.
- <li><a href="#noneselect"><code><none></code></a> - select a file only if
- none of the contained selectors select it.
- <li><a href="#notselect"><code><not></code></a> - can contain only one
- selector, and reverses what it selects and doesn't select.
- <li><a href="#orselect"><code><or></code></a> - selects a file if any one
- of the contained selectors selects it.
- <li><a href="#selectorselect"><code><selector></code></a> - contains only one
- selector and forwards all requests to it without alteration, provided
- that any <code>"if"</code> or
- <code>"unless"</code> conditions are met. This
- is the selector to use if you want to define a reference. It is
- usable as an element of <code><project></code>. It is also
- the one to use if you want selection of files to be dependent on
- Ant property settings.
+ <li><a href="#andselect"><code><and></code></a>—select a file only if all the
+ contained selectors select it.</li>
+ <li><a href="#majorityselect"><code><majority></code></a>—select a file if a
+ majority of its selectors select it.</li>
+ <li><a href="#noneselect"><code><none></code></a>—select a file only if none
+ of the contained selectors select it.</li>
+ <li><a href="#notselect"><code><not></code></a>—can contain only one
+ selector, and reverses what it selects and doesn't select.</li>
+ <li><a href="#orselect"><code><or></code></a>—selects a file if any one of the
+ contained selectors selects it.</li>
+ <li><a href="#selectorselect"><code><selector></code></a>—contains only one
+ selector and forwards all requests to it without alteration, provided that
+ any <code>"if"</code> or <code>"unless"</code> conditions are
+ met. This is the selector to use if you want to define a reference. It is usable as an
+ element of <code><project></code>. It is also the one to use if you want selection
+ of files to be dependent on Ant property settings.</li>
</ul>
- <p>All selector containers can contain any other selector, including
- other containers, as an element. Using containers, the selector tags
- can be arbitrarily deep. Here is a complete list of allowable
- selector elements within a container:</p>
+ <p>All selector containers can contain any other selector, including other containers, as an
+ element. Using containers, the selector tags can be arbitrarily deep. Here is a complete
+ list of allowable selector elements within a container:</p>
<ul>
<li><code><and></code></li>
@@ -1269,11 +1113,9 @@ Select files whose filename length is even.
<h4 id="andselect">And Selector</h4>
- <p>The <code><and></code> tag selects files that are
- selected by all of the elements it contains. It returns as
- soon as it finds a selector that does not select the file,
- so it is not guaranteed to check every selector.
- </p>
+ <p>The <code><and></code> tag selects files that are selected by all of the elements
+ it contains. It returns as soon as it finds a selector that does not select the file, so it
+ is not guaranteed to check every selector.</p>
<p>Here is an example of how to use the And Selector:</p>
@@ -1283,33 +1125,28 @@ Select files whose filename length is even.
<size value="4" units="Ki" when="more"/>
<date datetime="01/01/2001 12:00 AM" when="before"/>
</and>
-</fileset>
-</pre>
+</fileset></pre>
- <p>Selects all the JAR file larger than 4096 bytes which haven't been update
- since the last millennium.
- </p>
+ <p>Selects all the JAR file larger than 4096 bytes which haven't been update since the last
+ millennium.</p>
<h4 id="majorityselect">Majority Selector</h4>
- <p>The <code><majority></code> tag selects files provided
- that a majority of the contained elements also select it. Ties are
- dealt with as specified by the <code>allowtie</code> attribute.
- </p>
+ <p>The <code><majority></code> tag selects files provided that a majority of the
+ contained elements also select it. Ties are dealt with as specified by
+ the <var>allowtie</var> attribute.</p>
- <table>
+ <table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">allowtie</td>
- <td valign="top">Whether files should be selected if there
- are an even number of selectors selecting them as are
- not selecting them. Default is true.
- </td>
- <td valign="top" align="center">No</td>
+ <td>allowtie</td>
+ <td>Whether files should be selected if there are an even number of selectors selecting
+ them as are not selecting them.</td>
+ <td>No; default is <q>true</q></td>
</tr>
</table>
@@ -1322,21 +1159,17 @@ Select files whose filename length is even.
<contains text="taskdef" casesensitive="false"/>
<contains text="IntrospectionHelper" casesensitive="true"/>
</majority>
-</fileset>
-</pre>
+</fileset></pre>
<p>Selects all the HTML files which contain at least two of the three
- phrases "project", "taskdef", and "IntrospectionHelper" (this last phrase must
- match case exactly).
- </p>
+ phrases <q>project</q>, <q>taskdef</q>, and <q>IntrospectionHelper</q> (this last phrase
+ must match case exactly).</p>
<h4 id="noneselect">None Selector</h4>
- <p>The <code><none></code> tag selects files that are
- not selected by any of the elements it contains. It returns as
- so
<TRUNCATED>