<html> <head> <meta http-equiv="Content-Language" content="en-us"> <title>WaitFor Task</title> </head> <body> <h2>Waitfor</h2> <h3>Description</h3> <p>Blocks execution until a set of specified conditions become true. This is intended to be used with the <a href="parallel.html">parallel</a> task to synchronize a set of processes.</p> <p>The conditions to wait for are defined in <a href="waitfor.html#nested">nested elements</a>, if multiple conditions are specified, then the task will wait until all conditions are true..</p> <p></p> <p>If both maxwait and maxwaitunit are not specified, the maxwait is 3 minutes (180000 milliseconds).</p> <p>If the <code>timeoutproperty</code> attribute has been set, a property of that name will be created if the condition didn't come true within the specified time.</p> <h3>Parameters</h3> <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">maxwait</td> <td valign="top">The maximum amount of time to wait for all the required conditions to become true before failing the task. Defaults to 180000 maxwaitunits.</td> <td valign="top" align="center">No</td> </tr> <tr> <td valign="top">maxwaitunit</td> <td valign="top">The unit of time that must be used to interpret the value of the maxwait attribute. Defaults to millisecond. Valid Values are <ul> <li>millisecond</li> <li>second</li> <li>minute</li> <li>hour</li> <li>day</li> <li>week</li> </ul> </td> <td valign="top" align="center">No</td> </tr> <tr> <td valign="top">checkevery</td> <td valign="top">The amount of time to wait between each test of the conditions. Defaults to 500 checkeveryunits.</td> <td valign="top" align="center">No</td> </tr> <tr> <td valign="top">checkeveryunit</td> <td valign="top">The unit of time that must be used to interpret the value of the checkevery attribute. Defaults to millisecond. Valid Values are <ul> <li>millisecond</li> <li>second</li> <li>minute</li> <li>hour</li> <li>day</li> <li>week</li> </ul> </td> <td valign="top" align="center">No</td> </tr> <tr> <td valign="top">timeoutproperty</td> <td valign="top">the name of the property to set if maxwait has been exceeded.</td> <td valign="top" align="center">No</td> </tr> </table> <h3><a name="nested">Nested Elements</a></h3> <p>The available conditions that satisfy the <code><waitfor></code> task are the same as those for the <a href="condition.html"><code><condition></code></a> task. See <a href="conditions.html">here</a> for the full list.</p> <h3>Examples</h3> <blockquote> <p><code><waitfor maxwait="30" maxwaitunit="second"><br> <available file="errors.log"/><br> </waitfor></code></p> </blockquote> <p>waits up to 30 seconds for a file called errors.log to appear.</p> <blockquote> <p><code><waitfor maxwait="3" maxwaitunit="minute" checkevery="500"><br> <http url="http://localhost/myapp/index.html"/><br> </waitfor></code></p> </blockquote> <p>waits up to 3 minutes (and checks every 500 milliseconds) for a web server on localhost to serve up the specified URL.</p> <blockquote> <p><code><waitfor maxwait="10" maxwait="second"><br> <and><br> <socket server="dbserver" port="1521"/><br> <http url="http://webserver/mypage.html"/><br> </and><br> </waitfor></code></p> </blockquote> <p>waits up to 10 seconds for a server on the dbserver machine to begin listening on port 1521 and for the http://webserver/mypage.html web page to become available.</p> <hr><p align="center">Copyright © 2001 Apache Software Foundation. All rights Reserved.</p> </body> </html>