aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/ant/apache-ant-1.9.6/manual/Tasks/conditions.html
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/ant/apache-ant-1.9.6/manual/Tasks/conditions.html')
-rw-r--r--framework/src/ant/apache-ant-1.9.6/manual/Tasks/conditions.html1087
1 files changed, 0 insertions, 1087 deletions
diff --git a/framework/src/ant/apache-ant-1.9.6/manual/Tasks/conditions.html b/framework/src/ant/apache-ant-1.9.6/manual/Tasks/conditions.html
deleted file mode 100644
index 814072ec..00000000
--- a/framework/src/ant/apache-ant-1.9.6/manual/Tasks/conditions.html
+++ /dev/null
@@ -1,1087 +0,0 @@
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<html>
-
-<head>
-<meta http-equiv="Content-Language" content="en-us">
-<link rel="stylesheet" type="text/css" href="../stylesheets/style.css">
-<title>Conditions Task</title>
-</head>
-
-<body>
-
-<h2><a name="Conditions">Conditions</a></h2>
- <p>Conditions are nested elements of the
-<a href="condition.html"><code>&lt;condition&gt;</code></a> and
-<a href="waitfor.html"><code>&lt;waitfor&gt;</code></a> tasks.
- There are core conditions and custom conditions. Custom
- conditions are described in
- <a href="../Types/custom-programming.html#customconditions">
- Custom Conditions</a>.
- Core Conditions are described below.
- </p>
- <h3><a name="coreconditions">Core Conditions</a></h3>
-
-<p>These are the nested elements that can be used as conditions in the
-<a href="condition.html"><code>&lt;condition&gt;</code></a> and
-<a href="waitfor.html"><code>&lt;waitfor&gt;</code></a> tasks.</p>
-
-<h4><a name="not">not</a></h4>
-<p>The <code>&lt;not&gt;</code> element expects exactly one other
-condition to be nested into this element, negating the result of the
-condition. It doesn't have any attributes and accepts all nested
-elements of the condition task as nested elements as well.</p>
-
-<h4><a name="and">and</a></h4> <p>
-The <code>&lt;and&gt;</code> element doesn't have any attributes and
-accepts an arbitrary number of conditions as nested elements - all
-nested elements of the condition task are supported. This condition
-is true if all of its contained conditions are, conditions will be
-evaluated in the order they have been specified in the build file.</p>
-<p>The <code>&lt;and&gt;</code> condition has the same shortcut
-semantics as the Java &amp;&amp; operator, as soon as one of the
-nested conditions is false, no other condition will be evaluated.</p>
-
-<h4><a name="or">or</a></h4> <p>
-The <code>&lt;or&gt;</code> element doesn't have any attributes and
-accepts an arbitrary number of conditions as nested elements - all
-nested elements of the condition task are supported. This condition
-is true if at least one of its contained conditions is, conditions
-will be evaluated in the order they have been specified in the build
-file.</p> <p>The <code>&lt;or&gt;</code> condition has the same
-shortcut semantics as the Java || operator, as soon as one of the
-nested conditions is true, no other condition will be evaluated.</p>
-
-<h4><a name="xor">xor</a></h4>
-<p>The <code>&lt;xor&gt;</code> element performs an exclusive
-or on all nested elements, similar to the <code>^</code> operator
-in Java. It only evaluates to true if an odd number of nested conditions
-are true. There is no shortcutting of evaluation, unlike the <code>&lt;and&gt;</code>
-and <code>&lt;or&gt;</code> tests.
-It doesn't have any attributes and accepts all nested
-elements of the condition task as nested elements as well.</p>
-
-<h4><a name="available">available</a></h4>
-<p>This condition is identical to the <a
-href="available.html">Available</a> task, all attributes and nested
-elements of that task are supported, the property and value attributes
-are redundant and will be ignored.</p>
-
-<h4><a name="uptodate">uptodate</a></h4>
-<p>This condition is identical to the <a
-href="uptodate.html">Uptodate</a> task, all attributes and nested
-elements of that task are supported, the property and value attributes
-are redundant and will be ignored.</p>
-
-<h4><a name="os">os</a></h4>
-<p>Test whether the current operating system is of a given type. Each
-defined attribute is tested and the result is true only if <i>all</i>
-the tests succeed.
-</p>
-<table border="1" cellpadding="2" cellspacing="0">
- <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">family</td>
- <td valign="top">The name of the operating system family to expect.</td>
- <td valign="top" align="center">No</td>
- </tr>
- <tr>
- <td valign="top">name</td>
- <td valign="top">The name of the operating system to expect.</td>
- <td valign="top" align="center">No</td>
- </tr>
- <tr>
- <td valign="top">arch</td>
- <td valign="top">The architecture of the operating system to expect.</td>
- <td valign="top" align="center">No</td>
- </tr>
- <tr>
- <td valign="top">version</td>
- <td valign="top">The version of the operating system to expect.</td>
- <td valign="top" align="center">No</td>
- </tr>
-</table>
-<p>Supported values for the family attribute are:
-<ul>
- <li>windows (for all versions of Microsoft Windows)</li>
- <li>dos (for all Microsoft DOS based operating systems including
- Microsoft Windows and OS/2)</li>
- <li>mac (for all Apple Macintosh systems)</li>
- <li>unix (for all Unix and Unix-like operating systems)</li>
- <li>netware (for Novell NetWare)</li>
- <li>os/2 (for OS/2)</li>
- <li>tandem (for HP's NonStop Kernel - formerly Tandem)</li>
- <li>win9x for Microsoft Windows 95 and 98, ME and CE</li>
- <li>winnt for Microsoft Windows NT-based systems, including Windows 2000, XP and
- successors</li>
- <li>z/os for z/OS and OS/390</li>
- <li>os/400 for OS/400</li>
- <li>openvms for OpenVMS</li>
-</ul>
-
-<h4><a name="equals">equals</a></h4>
-<p>Tests whether the two given values are equal.</p>
-<table border="1" cellpadding="2" cellspacing="0">
- <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">arg1</td>
- <td valign="top">First value to test.</td>
- <td valign="top" align="center">Yes</td>
- </tr>
- <tr>
- <td valign="top">arg2</td>
- <td valign="top">Second value to test.</td>
- <td valign="top" align="center">Yes</td>
- </tr>
- <tr>
- <td valign="top">casesensitive</td>
- <td valign="top">Perform a case sensitive comparison. Default is
- true.</td>
- <td valign="top" align="center">No</td>
- </tr>
- <tr>
- <td valign="top">trim</td>
- <td valign="top">Trim whitespace from arguments before comparing
- them. Default is false.</td>
- <td valign="top" align="center">No</td>
- </tr>
- <tr>
- <td valign="top">forcestring</td>
- <td valign="top">Force string comparison of <code>arg1/arg2</code>.
- Default is false. <em>Since Apache Ant 1.8.1</em>
- </td>
- <td valign="top" align="center">No</td>
- </tr>
-</table>
-
-<h4><a name="isset">isset</a></h4>
-<p>Test whether a given property has been set in this project.</p>
-<table border="1" cellpadding="2" cellspacing="0">
- <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">property</td>
- <td valign="top">The name of the property to test.</td>
- <td valign="top" align="center">Yes</td>
- </tr>
-</table>
-
-<h4><a name="checksum">checksum</a></h4>
-<p>This condition is identical to the <a href="checksum.html">Checksum</a>
-task, all attributes and nested elements of that task are supported,
-the property and overwrite attributes are redundant and will be
-ignored.</p>
-
-<h4><a name="http">http</a></h4>
-<p>The <code>http</code> condition checks for a valid response from a
-web server of the specified url. By default, HTTP responses errors
-of 400 or greater are viewed as invalid.</p>
-<table border="1" cellpadding="2" cellspacing="0">
- <tr>
- <td width="12%" valign="top"><b>Attribute</b></td>
- <td width="78%" valign="top"><b>Description</b></td>
- <td width="10%" valign="top"><b>Required</b></td>
- </tr>
- <tr>
- <td valign="top">url</td>
- <td valign="top">The full URL of the page to request. The web server must
- return a status code below the value of <tt>errorsBeginAt</tt></td>
- <td align="center">Yes.</td>
- </tr>
- <tr>
- <td valign="top">errorsBeginAt</td>
- <td valign="top">The lowest HTTP response code that signals an error;
- by default '400'; server errors, not-authorized, not-found and the like
- are detected</td>
- <td align="center">No</td>
- </tr>
- <tr>
- <td valign="top">requestMethod</td>
- <td valign="top">The HTTP method to be used when issuing the request.
- Any of GET, POST, HEAD, OPTIONS, PUT, DELETEm and TRACE
- are valid, subject to protocol restrictions. The default if not
- specified is &quot;GET&quot;.<br/>
- <em>since Ant 1.8.0</em></td>
- <td align="center">No</td>
- </tr>
-</table>
-
-<h4><a name="socket">socket</a></h4>
-<p>The <code>socket</code> condition checks for the existence of a
-TCP/IP listener at the specified host and port.</p>
-<table border="1" cellpadding="2" cellspacing="0">
- <tr>
- <td width="12%" valign="top"><b>Attribute</b></td>
- <td width="78%" valign="top"><b>Description</b></td>
- <td width="10%" valign="top"><b>Required</b></td>
- </tr>
- <tr>
- <td valign="top">server</td>
- <td valign="top">The DNS name or IP address of the server.</td>
- <td align="center">Yes.</td>
- </tr>
- <tr>
- <td valign="top">port</td>
- <td valign="top">The port number to connect to.</td>
- <td align="center">Yes.</td>
- </tr>
-</table>
-
-<h4><a name="filesmatch">filesmatch</a></h4>
-<p>Test two files for matching. Nonexistence of one file results in "false",
-although if neither exists they are considered equal in terms of content.
-This test does a byte for byte comparison, so test time scales with
-byte size. NB: if the files are different sizes, one of them is missing
-or the filenames match the answer is so obvious the detailed test is omitted.
-
-</p>
-<table border="1" cellpadding="2" cellspacing="0">
- <tr>
- <td width="12%" valign="top"><b>Attribute</b></td>
- <td width="78%" valign="top"><b>Description</b></td>
- <td width="10%" valign="top"><b>Required</b></td>
- </tr>
- <tr>
- <td valign="top">file1</td>
- <td valign="top">First file to test</td>
- <td align="center">Yes</td>
- </tr>
- <tr>
- <td valign="top">file2</td>
- <td valign="top">Second file to test</td>
- <td align="center">Yes</td>
- </tr>
- <tr>
- <td valign="top">textfile</td>
- <td valign="top">Whether to ignore line endings when comparing
- files; defaults to <i>false</i> which triggers a binary
- comparison. <b>Since Ant 1.7</b>
- </td>
- <td align="center">No</td>
- </tr>
-</table>
-
-<h4><a name="contains">contains</a></h4>
-<p>Tests whether a string contains another one.</p>
-<table border="1" cellpadding="2" cellspacing="0">
- <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">string</td>
- <td valign="top">The string to search in.</td>
- <td valign="top" align="center">Yes</td>
- </tr>
- <tr>
- <td valign="top">substring</td>
- <td valign="top">The string to search for.</td>
- <td valign="top" align="center">Yes</td>
- </tr>
- <tr>
- <td valign="top">casesensitive</td>
- <td valign="top">Perform a case sensitive comparison. Default is
- true.</td>
- <td valign="top" align="center">No</td>
- </tr>
-</table>
-
-<h4><a name="istrue">istrue</a></h4>
-<p>Tests whether a string equals any of the ant definitions of true,
-that is "true","yes", or "on"</p>
-<table border="1" cellpadding="2" cellspacing="0">
- <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">value</td>
- <td valign="top">value to test</td>
- <td valign="top" align="center">Yes</td>
- </tr>
-</table>
-<blockquote><pre>
-&lt;istrue value=&quot;${someproperty}&quot;/&gt;
-&lt;istrue value=&quot;false&quot;/&gt;
-</pre></blockquote>
-
-<h4><a name="isfalse">isfalse</a></h4>
-<p>Tests whether a string is not true, the negation of &lt;istrue&gt;
-</p>
-<table border="1" cellpadding="2" cellspacing="0">
- <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">value</td>
- <td valign="top">value to test</td>
- <td valign="top" align="center">Yes</td>
- </tr>
-</table>
-<blockquote><pre>
-&lt;isfalse value=&quot;${someproperty}&quot;/&gt;
-&lt;isfalse value=&quot;false&quot;/&gt;
-</pre></blockquote>
-
-<h4><a name="isreference">isreference</a></h4>
-
-<p>Test whether a given reference has been defined in this project and
-- optionally - is of an expected type.</p>
-
-<p>This condition has been added in Apache Ant 1.6.</p>
-
-<table border="1" cellpadding="2" cellspacing="0">
- <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">refid</td>
- <td valign="top">The id of the reference to test.</td>
- <td valign="top" align="center">Yes</td>
- </tr>
- <tr>
- <td valign="top">type</td>
- <td valign="top">Name of the data type or task this reference is
- expected to be.</td>
- <td valign="top" align="center">No</td>
- </tr>
-</table>
-
-<h4><a name="issigned">issigned</a></h4>
- <p>
- Test whether a jarfile is signed.
- If the name of the
- signature is passed, the file is checked for presence of that
- particular signature; otherwise the file is checked for the
- existence of any signature. It does not perform rigorous
- signature validation; it only looks for the presence of a signature.
- </p>
- <p>
- This condition was added in Apache Ant 1.7.
- </p>
- <table border="1" cellpadding="2" cellspacing="0">
- <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">file</td>
- <td valign="top">
- The jarfile that is to be tested for the presence
- of a signature.
- </td>
- <td valign="top" align="center">Yes</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><a name="isfileselected">isfileselected</a></h4>
- <p>
- Test whether a file passes an embedded
- <a href="../Types/selectors.html">selector</a>.
- </p>
- <p>
- This condition was added in Apache Ant 1.6.3.
- </p>
- <table border="1" cellpadding="2" cellspacing="0">
- <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">file</td>
- <td valign="top">
- The file to check if is passes the embedded selector.
- </td>
- <td valign="top" align="center">Yes</td>
- </tr>
- <tr>
- <td valign="top">basedir</td>
- <td valign="top">The base directory to use for name based selectors. It this is not set,
- the project's basedirectory will be used.</td>
- <td valign="top" align="center">No</td>
- </tr>
- </table>
- <p>
- Example usage:
- </p>
-<blockquote><pre>
-&lt;isfileselected file="a.xml"&gt;
- &lt;date datetime="06/28/2000 2:02 pm" when="equal"/&gt;
-&lt;/isfileselected&gt;
-</pre></blockquote>
-
-<h4><a name="typefound">typefound</a></h4>
-
-<p>Test whether a given type is defined, and that
-its implementation class can be loaded. Types include
-tasks, datatypes, scriptdefs, macrodefs and presetdefs.</p>
-
-<p>This condition was added in Apache Ant 1.7.</p>
-
-<table border="1" cellpadding="2" cellspacing="0">
- <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">name of the type</td>
- <td valign="top" align="center">Yes</td>
- </tr>
- <tr>
- <td valign="top">uri</td>
- <td valign="top">
- The uri that this type lives in.
- </td>
- <td valign="top" align="center">No</td>
- </tr>
-</table>
-
- <p>
- Example usages:
- </p>
-<blockquote><pre>
-&lt;typefound name="junit"/&gt;
-&lt;typefound uri="antlib:org.apache.maven.artifact.ant" name="artifact"/&gt;
-</pre></blockquote>
-
-<h4><a name="scriptcondition">scriptcondition</a></h4>
-
-<p>Evaluate a condition based on a script 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.
-</p>
-<p>
-See the <a href="../Tasks/script.html">Script</a> task for
-an explanation of scripts and dependencies.
-</p>
-
-<p>This condition was added in Apache Ant 1.7.</p>
-
-<table border="1" cellpadding="2" cellspacing="0">
- <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">script language</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">value</td>
- <td valign="top">default boolean value</td>
- <td valign="top" align="center">No -default is "false"</td>
- </tr>
- <tr>
- <td valign="top">src</td>
- <td valign="top">filename of script source</td>
- <td valign="top" align="center">No</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. <em>since Ant 1.8.0</em></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>
-<h5>Parameters specified as nested elements</h5>
-<h6>classpath</h6>
- <p>
- See the <a href="../Tasks/script.html">script</a> task
- for using this nested element.
- </p>
-<h5>Description</h5>
-<p>
-The script supports script language inline, this script has access to the
-same beans as the <code>&lt;script&gt;</code> task, and to the <code>self</code> bean,
-which refers back to the condition itself. If the script evaluates to a boolean result,
-this is the result of the condition's evaluation (<em>since Ant 1.7.1</em>).
-Alternatively, <code>self.value</code> can be used to set the evaluation result.
-</p>
-<p>
-Example:
-</p>
-<blockquote><pre>
-&lt;scriptcondition language=&quot;javascript&quot;
- value=&quot;true&quot;&gt;
- self.setValue(false);
-&lt;/scriptcondition&gt;
-</pre></blockquote>
-
-Sets the default value of the condition to true, then in the script,
-sets the value to false. This condition always evaluates to "false"
-
-<h4><a name="parsersupports">parsersupports</a></h4>
-
-<p>Tests whether Ant's XML parser supports a given
-feature or property, as per the SAX/JAXP specifications, by
-attempting to set the appropriate property/feature/</p>
-
-<p>This condition was added in Apache Ant 1.7.</p>
-
-<table border="1" cellpadding="2" cellspacing="0">
- <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">property</td>
- <td valign="top">property to set</td>
- <td valign="top" align="center">one of property or feature</td>
- </tr>
- <tr>
- <td valign="top">feature</td>
- <td valign="top">feature to set</td>
- <td valign="top" align="center">one of property or feature</td>
- </tr>
- <tr>
- <td valign="top">value</td>
- <td valign="top">string (property) or boolean (feature)</td>
- <td valign="top" align="center">For property tests, but not for feature tests</td>
- </tr>
-</table>
-
-<blockquote><pre>
-&lt;parsersupports feature="http://xml.org/sax/features/namespaces"/&gt;
-</pre></blockquote>
-Check for namespace support. All SAX2 parsers should have this.
-<blockquote><pre>
-&lt;or&gt;
- &lt;parsersupports
- feature="http://apache.org/xml/features/validation/schema"/&gt;
- &lt;parsersupports
- feature="http://java.sun.com/xml/jaxp/properties/schemaSource"/&gt;
-&lt;/or&gt;
-</pre></blockquote>
-
-Check for XML Schema support.
-
-<pre>
-&lt;parsersupports
- property="http://apache.org/xml/properties/schema/external-noNamespaceSchemaLocation"
- value="document.xsd"/&gt;
-</pre>
-
-Check for Xerces-specific definition of the location of the no namespace schema.
-
-<h4><a name="isreachable">isreachable</a></h4>
-
-<p>Uses Java1.5+ networking APIs to probe for a (remote) system being
-reachable. Exactly what probe mechanisms are used is an implementation
-feature of the JVM. They may include ICMP "ping" packets, UDP or TCP connections
-to port 7 "echo service" or other means. On Java1.4 and earlier, being able
-to resolve the hostname is considered success. This means that if DNS is not
-working or a URL/hostname is bad, the test will fail, but otherwise succeed
-even if the remote host is actually absent.
-
-</p>
-<p>
-This condition turns unknown host exceptions into false conditions. This is
-because on a laptop, DNS is one of the first services when the network goes; you
-are implicitly offline.
-</p>
-<p>
- If a URL is supplied instead of a host, the hostname is extracted
- and used in the test - all other parts of the URL are discarded.
-</p>
-<p>
-The test may not work through firewalls, that is, something may be reachable
-using a protocol such as HTTP, while the lower level ICMP packets get dropped
-on the floor. Similarly, a host may detected as reachable with ICMP, but
-not reachable on other ports (i.e. port 80), because of firewalls.
-</p>
-<p>
-
-This condition was added in Apache Ant 1.7.</p>
-
-<table border="1" cellpadding="2" cellspacing="0">
- <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">host</td>
- <td valign="top">host to check for</td>
- <td valign="top" align="center">one of url or host</td>
- </tr>
- <tr>
- <td valign="top">url</td>
- <td valign="top">URL containing hostname</td>
- <td valign="top" align="center">one of url or host</td>
- </tr>
- <tr>
- <td valign="top">timeout</td>
- <td valign="top">timeout in seconds</td>
- <td valign="top" align="center">no, default is 30s</td>
- </tr>
-</table>
-
-<blockquote><pre>
-&lt;condition property="offline"&gt;
- &lt;isreachable url="http://ibiblio.org/maven/" /&gt;
-&lt;/condition&gt;
-</pre></blockquote>
-
-<p>
-Probe for the maven repository being reachable.
-</p>
-
-<blockquote><pre>
-&lt;condition property="offline"&gt;
- &lt;isreachable host="ibiblio.org" timeout="10" /&gt;
-&lt;/condition&gt;
-</pre></blockquote>
-
-<p>
-Probe for the maven repository being reachable using the hostname, ten second timeout..
-</p>
-
-<h4><a name="length">length</a></h4>
-<p>This condition is a facet of the <a href="length.html">Length</a> task.
- It is used to test the length of a string or one or more files.
- <b>Since Ant 1.6.3</b>
-</p>
-
-<blockquote><pre>
-&lt;length string=" foo " trim="true" length="3" /&gt;
-</pre></blockquote>
-<p>Verify a string is of a certain length.</p>
-
-<blockquote><pre>
-&lt;length file=&quot;foo&quot; when=&quot;greater&quot; length=&quot;0&quot; /&gt;
-</pre></blockquote>
-<p>Verify that file <i>foo</i> is not empty.</p>
-
-<h4><a name="isfailure">isfailure</a></h4>
-
-<p>Test the return code of an executable (see the
-<a href="exec.html">Exec</a> task) for failure. <b>Since Ant 1.7</b></p>
-
-<table border="1" cellpadding="2" cellspacing="0">
- <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">code</td>
- <td valign="top">The return code to test.</td>
- <td valign="top" align="center">Yes</td>
- </tr>
-</table>
-
-<h4><a name="resourcecount">resourcecount</a></h4>
-<p>This condition is a facet of the
- <a href="resourcecount.html">ResourceCount</a> task.
- It is used to test the size of a
- <a href="../Types/resources.html#collection">resource collection</a>.
- <b>Since Ant 1.7</b>
-</p>
-
-<blockquote><pre>
-&lt;resourcecount refid=&quot;myresourcecollection&quot; when=&quot;greater&quot; count=&quot;0&quot; /&gt;
-</pre></blockquote>
-<p>Verify that a resource collection is not empty.</p>
-
-<h4><a name="resourcesmatch">resourcesmatch</a></h4>
-<p>Test resources for matching. Nonexistence of one or more resources results in
-"false", although if none exists they are considered equal in terms of content.
-By default this test does a byte for byte comparison, so test time scales with
-byte size. NB: if the files are different sizes, one of them is missing
-or the filenames match the answer is so obvious the detailed test is omitted.
-The resources to check are specified as nested
-<a href="../Types/resources.html#collection">resource collections</a>,
-meaning that more than two resources can be checked; in this case all resources
-must match. <b>Since Ant 1.7</b>
-</p>
-<table border="1" cellpadding="2" cellspacing="0">
- <tr>
- <td width="12%" valign="top"><b>Attribute</b></td>
- <td width="78%" valign="top"><b>Description</b></td>
- <td width="10%" valign="top"><b>Required</b></td>
- </tr>
- <tr>
- <td valign="top">astext</td>
- <td valign="top">Whether to ignore line endings
- when comparing resource content; defaults to <i>false</i>,
- while <i>true</i> triggers a binary comparison.
- </td>
- <td align="center">No</td>
- </tr>
-</table>
-
-<h4><a name="resourcecontains">resourcecontains</a></h4>
-<p>Tests whether a resource contains a given (sub)string.</p>
-<p>The resources to check are specified via references or - in the
- case of file resources via the resource attribute. <b>Since Ant 1.7.1</b>
-</p>
-<table border="1" cellpadding="2" cellspacing="0">
- <tr>
- <td width="12%" valign="top"><b>Attribute</b></td>
- <td width="78%" valign="top"><b>Description</b></td>
- <td width="10%" valign="top"><b>Required</b></td>
- </tr>
- <tr>
- <td valign="top">resource</td>
- <td valign="top">Name of a file that is the resource to test.
- </td>
- <td align="center" rowspan="2">One of the two</td>
- </tr>
- <tr>
- <td valign="top">refid</td>
- <td valign="top">Reference to a resource defined inside the project.</td>
- </tr>
- <tr>
- <td valign="top">substring</td>
- <td valign="top">The string to search for.</td>
- <td valign="top" align="center">Yes</td>
- </tr>
- <tr>
- <td valign="top">casesensitive</td>
- <td valign="top">Perform a case sensitive comparison. Default is
- true.</td>
- <td valign="top" align="center">No</td>
- </tr>
-</table>
-
-<h4><a name="hasmethod">hasmethod</a></h4>
-
-<p> Tests for a class having a method or field. If the class is not found
- or fails to load, the build fails.
-
- <b>Since Ant 1.7</b>
-</p>
-
-<table border="1" cellpadding="2" cellspacing="0">
- <tr>
- <td width="12%" valign="top"><b>Attribute</b></td>
- <td width="78%" valign="top"><b>Description</b></td>
- <td width="10%" valign="top"><b>Required</b></td>
- </tr>
- <tr>
- <td valign="top">classname</td>
- <td valign="top">name of the class to load</td>
- <td align="center">yes</td>
- </tr>
- <tr>
- <td valign="top">field</td>
- <td valign="top">name of a field to look for</td>
- <td align="center">one of field or method</td>
- </tr>
- <tr>
- <td valign="top">method</td>
- <td valign="top">name of a method to look for</td>
- <td align="center">one of field or method</td>
- </tr>
-
- <tr>
- <td valign="top">ignoreSystemClasses</td>
- <td valign="top">should system classes be ignored?</td>
- <td align="center">No -default is false</td>
- </tr>
- <tr>
- <td valign="top">classpath</td>
- <td valign="top">a class path</td>
- <td align="center">No</td>
- </tr>
- <tr>
- <td valign="top">classpathref</td>
- <td valign="top">reference to a class path</td>
- <td align="center">No</td>
- </tr>
-</table>
-
-<p>
- There is also a nested &lt;classpath&gt; element, which can be used to specify
- a classpath.
-</p>
-<blockquote><pre>
-&lt;hasmethod classname="java.util.ArrayList" method="trimToSize" /&gt;
-</pre></blockquote>
-
-<p>Looks for the method trimToSize in the ArrayList class.</p>
-
-<h4><a name="matches">matches</a></h4>
-
-<p>
- Test if the specified string matches the specified regular
- expression pattern.
- <b>Since Ant 1.7</b></p>
-
-<table border="1" cellpadding="2" cellspacing="0">
- <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">string</td>
- <td valign="top">The string to test.</td>
- <td valign="top" align="center">Yes</td>
- </tr>
- <tr>
- <td valign="top">pattern</td>
- <td valign="top">The regular expression pattern used to test.</td>
- <td valign="top" align="center">Yes, unless there is a nested
- <code>&lt;regexp&gt;</code> element.</td>
- </tr>
- <tr>
- <td valign="top">casesensitive</td>
- <td valign="top">Perform a case sensitive match. Default is
- true.</td>
- <td valign="top" align="center">No</td>
- </tr>
- <tr>
- <td valign="top">multiline</td>
- <td valign="top">
- Perform a multi line match.
- Default is false.</td>
- <td valign="top" align="center">No</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.</td>
- <td valign="top" align="center">No</td>
- </tr>
-</table>
-
- <p>
- There is also an optional &lt;regexp&gt; element, which can be used to specify
- a regular expression instead of the "pattern" attribute.
- See <a href="../Types/regexp.html">Regexp Type</a> for the description
- of the nested element regexp and of
- the choice of regular expression implementation.
- </p>
- <p>
- An example:
- </p>
-<blockquote><pre>
-&lt;condition property="legal-password"&gt;
- &lt;matches pattern="[1-9]" string="${user-input}"/&gt;
-&lt;/condition&gt;
-&lt;fail message="Your password should at least contain one number"
- unless="legal-password"/&gt;
-</pre></blockquote>
- <p>
- The following example sets the property "ok" if
- the property "input" is three characters long, starting
- with 'a' and ending with 'b'.
- </p>
-<blockquote><pre>
-&lt;condition property="ok"&gt;
- &lt;matches string="${input}" pattern="^a.b$"/&gt;
-&lt;/condition&gt;
-</pre></blockquote>
- <p>
- The following defines a reference regular expression for
- matching dates and then uses antunit to check if the
- property "today" is in the correct format:
- </p>
-<blockquote><pre>
-&lt;regexp id="date.pattern" pattern="^[0123]\d-[01]\d-[12]\d\d\d$"/&gt;
-
-&lt;au:assertTrue xmlns:au="antlib:org.apache.ant.antunit"&gt;
- &lt;matches string="${today}"&gt;
- &lt;regexp refid="date.pattern"/&gt;
- &lt;/matches&gt;
-&lt;/au:assertTrue&gt;
-</pre></blockquote>
- <p>
- The following example shows the use of the singleline and the casesensitive
- flags.
- </p>
-<blockquote><pre>
-&lt;au:assertTrue&gt;
- &lt;matches string="AB${line.separator}C" pattern="^ab.*C$"
- casesensitive="false"
- singleline="true"/&gt;
-&lt;/au:assertTrue&gt;
-&lt;au:assertFalse&gt;
- &lt;matches string="AB${line.separator}C" pattern="^ab.*C$"
- casesensitive="false"
- singleline="false"/&gt;
-&lt;/au:assertFalse&gt;
-</pre></blockquote>
-
-<h4><a name="antversion">antversion</a></h4>
-<p>This condition is identical to the <a
-href="antversion.html">Antversion</a> task, all attributes are supported, the property attribute
-is redundant and will be ignored.</p>
-
-
-<h4><a name="hasfreespace">hasfreespace</a></h4>
-
-<p>
- Tests a partition to see if there is enough space.
- <b>Since Ant 1.7.0</b></p>
- <p>Needed attribute can be specified using standard computing terms:<br/>
- <ul>
- <li>K : Kilobytes (1024 bytes)</li>
- <li>M : Megabytes (1024 K)</li>
- <li>G : Gigabytes (1024 M)</li>
- <li>T : Terabytes (1024 G)</li>
- <li>P : Petabytes (1024 T)</li>
- </ul>
- </p>
-
-<table border="1" cellpadding="2" cellspacing="0">
- <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">partition</td>
- <td valign="top">The partition or filesystem to check for freespace</td>
- <td valign="top" align="center">Yes</td>
- </tr>
- <tr>
- <td valign="top">needed</td>
- <td valign="top">The amount of freespace needed.</td>
- <td valign="top" align="center">Yes</td>
- </tr>
-</table>
- <p>
- An example:
- </p>
-<blockquote><pre>
-&lt;hasfreespace partition="c:" needed="100M"/&gt;
-</pre></blockquote>
-
-<h4><a name="islastmodified">islastmodified</a></h4>
-
-<p>Tests the last modified date of a resource. <em>Since Ant
-1.8.0</em></p>
-
-<table border="1" cellpadding="2" cellspacing="0">
- <tr>
- <td width="12%" valign="top"><b>Attribute</b></td>
- <td width="78%" valign="top"><b>Description</b></td>
- <td width="10%" valign="top"><b>Required</b></td>
- </tr>
- <tr>
- <td valign="top">millis</td>
- <td valign="top">Specifies the expected modification time of the resource
- in milliseconds since midnight Jan 1 1970.</td>
- <td valign="center" align="center" rowspan="2">Exactly one of the
- two.</td>
- </tr>
- <tr>
- <td valign="top">datetime</td>
- <td valign="top">Specifies the expected modification time of the
- resource. The special value &quot;now&quot; indicates the
- current time.</td>
- </tr>
- <tr>
- <td valign="top">pattern</td>
- <td valign="top">SimpleDateFormat-compatible pattern string.
- Defaults to MM/DD/YYYY HH:MM AM_or_PM or MM/DD/YYYY HH:MM:SS AM_or_PM.
- </td>
- <td valign="top" align="center">No</td>
- </tr>
- <tr>
- <td valign="top">mode</td>
- <td valign="top">How to compare the timestamp. Accepted values
- are "equals", "before", "not-before", "after" and "not-after".
- <td valign="top">No, defaults to "equals".</td>
- </tr>
-</table>
-
-<p>The actual resource to test is specified as a nested element.</p>
-
- <p>
- An example:
- </p>
-<blockquote><pre>
-&lt;islastmodified dateTime="08/18/2009 04:41:19 AM" mode="not-before"&gt;
- &lt;file file="${file}"/&gt;
-&lt;/islastmodified&gt;
-</pre></blockquote>
-
-<h4><a name="resourceexists">resourceexists</a></h4>
-
-<p>Tests a resource for existence. <em>since Ant 1.8.0</em></p>
-
-<p>The actual resource to test is specified as a nested element.</p>
-
- <p>
- An example:
- </p>
-<blockquote><pre>
-&lt;resourceexists&gt;
- &lt;file file="${file}"/&gt;
-&lt;/resourceexists&gt;
-</pre></blockquote>
-</body>
-</html>