<html>

<head>
<meta http-equiv="Content-Language" content="en-us">
<title>Tasks Desinged for Extension</title>
<link rel="stylesheet" type="text/css" href="stylesheets/antmanual.css">
</head>

<body>
<h1>Tasks Designed for Extension</h1>

<p>These classes are designed to be extended.  Always start here when writing your own task.</p>

<p><strong>The links will not work in the online version of this document.</strong></p>

<table border="1">
<thead>
<tr>
<th>
Class
</th>
<th>
Description
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<a href="api/org/apache/tools/ant/Task.html">Task</a>
</td>
<td>
Base class for all tasks.
</td>
</tr>

<tr>
<td>
<a href="api/org/apache/tools/ant/taskdefs/AbstractCvsTask.html">AbstractCvsTask</a>
</td>
<td>
Another task can extend this with some customized output processing
</td>
</tr>

<tr>
<td>
<a href="api/org/apache/tools/ant/taskdefs/JDBCTask.html">JDBCTask</a>
</td>
<td>
Handles JDBC configuration needed by SQL type tasks.
</td>
</tr>

<tr>
<td>
<a href="api/org/apache/tools/ant/taskdefs/MatchingTask.html">MatchingTask</a>
</td>
<td>
This is an abstract task that should be used by all those tasks that require to include or exclude files based on pattern matching.
</td>
</tr>

<tr>
<td>
<a href="api/org/apache/tools/ant/taskdefs/Pack.html">Pack</a>
</td>
<td>
Abstract Base class for pack tasks.
</td>
</tr>


<tr>
<td>
<a href="api/org/apache/tools/ant/taskdefs/Unpack.html">Unpack</a>
</td>
<td>
Abstract Base class for unpack tasks.
</td>
</tr>

</tbody>
</table>

<hr>
<p align="center">Copyright &copy; 2001-2004 The Apache Software Foundation. All rights
Reserved.</p>

</body>
</html>
