blob: 93d8c27d91ebe96f566ca22fd42e122dffbb3ca6 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HEAD><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</HEAD>
<HTML>
<BODY>
<H1><CENTER>Ant Types</CENTER></H1>
<b><i>Identifier: </i></b>org.eclipse.ant.core.antTypes<p>
<b><i>Description: </i></b>Allows plug-ins to define arbitrary Ant datatypes for
use by the Ant infrastructure. The standard Ant
infrastructure allows for the addition of arbitrary
datatypes. Unfortunately, it is unlikely that the
Ant Core plug-in would have the classes required
by these datatypes on its classpath (or that of any
of its prerequisites). To address this, clients
should define an extension which plugs into this
extension-point and maps a datatype name onto a class.
The Ant plug-in can then request that the declaring
plug-in load the specified class.<p><b><i>Configuration Markup:</i></b><p>
<p><samp>&nbsp;&nbsp; &lt;!ELEMENT extension (antType*)&gt;</samp>
<br><br><samp>&nbsp;&nbsp; &lt;!ATTLIST extension</samp>
<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;point&nbsp;CDATA #REQUIRED</samp>
<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;id&nbsp;&nbsp;&nbsp;&nbsp;CDATA #IMPLIED</samp>
<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name&nbsp;&nbsp;CDATA #IMPLIED</samp>
<br><samp>&nbsp;&nbsp; &gt;</samp>
<ul>
<li><b>point</b> - a fully qualified identifier of the target extension point</li><li><b>id</b> - an optional identifier of the extension instance</li><li><b>name</b> - an optional name of the extension instance</li></ul>
<p><samp>&nbsp;&nbsp; &lt;!ELEMENT antType EMPTY&gt;</samp>
<br><br><samp>&nbsp;&nbsp; &lt;!ATTLIST antType</samp>
<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CDATA #REQUIRED</samp>
<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;&nbsp;&nbsp;&nbsp;CDATA #REQUIRED</samp>
<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;library&nbsp;&nbsp;CDATA #REQUIRED</samp>
<br><samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;headless&nbsp;CDATA #IMPLIED</samp>
<br><samp>&nbsp;&nbsp; &gt;</samp>
<ul>
<li><b>name</b> - name of the type to be defined</li><li><b>class</b> - the fully qualified name of a Java class implementing
the datatype. Generally this class must be a subclass of
<samp>org.apache.tools.ant.types.DataType</samp>.</li><li><b>library</b> - a path relative to the plug-in install location
for the library containing the type.</li><li><b>headless</b> - indicates whether this type is suitable for use in a "headless" Ant environment. If running headless and the attribute is "false",
the type will not be loaded or defined. As well, the plugin class loader will not be added as a parent classloader to the Ant classloader.
The implied value is true, when not specified.</li></ul>
<b><i>Examples: </i></b>The following is an example of an object declaration:
<p>
<pre>
&lt;extension point=&quot;org.eclipse.ant.core.antType&quot;&gt;
&lt;antType name=&quot;coolType&quot; class=&quot;com.example.CoolType&quot;/&gt;
&lt;/extension&gt;
</pre>
</p><p>
<b><i>Supplied Implementation: </i></b>The platform itself supplies a number of datatypes
including commaPatternSet.<p>
<a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corp. 2000, 2003. All Rights Reserved." BORDER=0 height=12 width=195></a><p>
</BODY>
</HTML>