Browse Source

Doc tidy-up:

* Fixed some spelling, added a tiny bit more content.
* Added an 'anchor' attribute for <section> and <subsection> elements.


git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@272255 13f79535-47bb-0310-9956-ffa450edef68
master
adammurdoch 23 years ago
parent
commit
13775663d6
25 changed files with 292 additions and 265 deletions
  1. +25
    -25
      proposal/myrmidon/docs/ant1compat.html
  2. +30
    -24
      proposal/myrmidon/docs/buildfile.html
  3. +12
    -12
      proposal/myrmidon/docs/classloader.html
  4. +14
    -14
      proposal/myrmidon/docs/configuring.html
  5. +5
    -5
      proposal/myrmidon/docs/differences.html
  6. +9
    -8
      proposal/myrmidon/docs/getinvolved.html
  7. +10
    -10
      proposal/myrmidon/docs/index.html
  8. +15
    -15
      proposal/myrmidon/docs/librarys.html
  9. +6
    -6
      proposal/myrmidon/docs/task.html
  10. +46
    -44
      proposal/myrmidon/docs/todo.html
  11. +12
    -12
      proposal/myrmidon/docs/user.html
  12. +7
    -7
      proposal/myrmidon/docs/vfs.html
  13. +19
    -19
      proposal/myrmidon/src/xdocs/ant1compat.xml
  14. +24
    -17
      proposal/myrmidon/src/xdocs/buildfile.xml
  15. +8
    -8
      proposal/myrmidon/src/xdocs/classloader.xml
  16. +1
    -1
      proposal/myrmidon/src/xdocs/configuring.xml
  17. +1
    -1
      proposal/myrmidon/src/xdocs/differences.xml
  18. +5
    -4
      proposal/myrmidon/src/xdocs/getinvolved.xml
  19. +4
    -4
      proposal/myrmidon/src/xdocs/index.xml
  20. +7
    -7
      proposal/myrmidon/src/xdocs/librarys.xml
  21. +12
    -2
      proposal/myrmidon/src/xdocs/stylesheets/docs.vsl
  22. +3
    -3
      proposal/myrmidon/src/xdocs/stylesheets/project.xml
  23. +1
    -1
      proposal/myrmidon/src/xdocs/task.xml
  24. +11
    -11
      proposal/myrmidon/src/xdocs/todo.xml
  25. +5
    -5
      proposal/myrmidon/src/xdocs/user.xml

+ 25
- 25
proposal/myrmidon/docs/ant1compat.html View File

@@ -11,7 +11,7 @@
<meta name="author" value="Darrell DeBoer">
<meta name="email" value="darrell at apache dot org">
<title>Apache Myrmidon - Ant1 Compatibitlity Layer</title>
<title>Apache Myrmidon - Ant 1 Compatibitlity Layer</title>
</head>
<body bgcolor="#ffffff" text="#000000" link="#525D76">
@@ -46,13 +46,13 @@
</ul>
<p><strong>User Guide</strong></p>
<ul>
<li> <a href="./buildfile.html">Build file</a>
<li> <a href="./buildfile.html">Project File</a>
</li>
<li> <a href="./vfs.html">Virtual File System</a>
</li>
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a>
<li> <a href="./ant1compat.html">Ant 1 Compatibility Layer</a>
</li>
<li> <a href="./differences.html">Differences to Ant1</a>
<li> <a href="./differences.html">Differences to Ant 1</a>
</li>
<li> <a href="./task.html">My First Task</a>
</li>
@@ -78,31 +78,31 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Overview"><strong>Overview</strong></a>
<a name="Overview"><strong>Overview</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
The Myrmidon-Ant1 Compatibility layer works by reusing most of the Ant1 code,
The Myrmidon-Ant1 Compatibility layer works by reusing most of the Ant 1 code,
with tasks and datatypes
being prefixed with "ant1." in build files. Almost all of the main Ant1 tree
being prefixed with "ant1." in build files. Almost all of the main Ant 1 tree
is included in the compatibility layer antlib. To insulate from changes in
the Ant1 tree, Ant1 class files are extracted from a jar, rather than
the Ant 1 tree, Ant 1 class files are extracted from a jar, rather than
being compiled from scratch.
</p>
<p>
Here's how it works: The first time an Ant1 task is encountered, an Ant1
Here's how it works: The first time an Ant 1 task is encountered, an Ant 1
project is created, and stored in the TaskContext under the name "ant1.project".
The Ant1 versions of Task and Project have been extended, overriding core behaviour,
The Ant 1 versions of Task and Project have been extended, overriding core behaviour,
with Myrmidon-specific behaviour.
</p>
<p>
The updated version of Task implements Configurable, receiving it's
complete Task Model, and actually setting/adding/creating attributes
with the help of the IntrospectionHelper. This process is designed to
mimic the Ant1 configuration policy, although not <i>all</i> of the
subtle variations of configuration present in Ant1 are handled.
mimic the Ant 1 configuration policy, although not <i>all</i> of the
subtle variations of configuration present in Ant 1 are handled.
</p>
<p>
The updated version of Project will provide hooks into the Myrmidon TaskContext,
@@ -114,16 +114,16 @@
<li>Task defined by &lt;taskdef&gt; (done)</li>
</ul>
<p>
So at present, properties declared in Ant2 tasks are available to all Ant1 tasks,
So at present, properties declared in Ant 2 tasks are available to all Ant 1 tasks,
and vice-versa. However, while a <code>&lt;ant1.path&gt;</code> reference works fine
in other <code>&lt;ant1.XXX&gt;</code>
tasks, it's not visible to Ant2 tasks in the same build, and vice-versa.
tasks, it's not visible to Ant 2 tasks in the same build, and vice-versa.
</p>
<p>
The <code>&lt;taskdef&gt;</code> task works ok, registering the task with the TypeManager using the
"ant1." prefix. Only a couple of DataTypes (Path and Patternset) are working
as top-level types, but this should be just a matter of adding references to
the Ant1 version of TypeInstanceTask in the descriptor.
the Ant 1 version of TypeInstanceTask in the descriptor.
</p>
<p>
The TransformingProjectBuilder (which is now the default builder for files
@@ -137,7 +137,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Using the compatibility layer"><strong>Using the compatibility layer</strong></a>
<a name="Using the compatibility layer"><strong>Using the compatibility layer</strong></a>
</font>
</td></tr>
<tr><td>
@@ -145,16 +145,16 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Using Ant1 tasks in a Myrmidon build file"><strong>Using Ant1 tasks in a Myrmidon build file</strong></a>
<a name="Using Ant 1 tasks in a Myrmidon build file"><strong>Using Ant 1 tasks in a Myrmidon build file</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
If you have a Myrmidon build file (eg with <code>version="2.0"</code>
on the project element, you can use Ant1 tasks and datatypes by using
on the project element, you can use Ant 1 tasks and datatypes by using
the "ant1." suffix on the regular element name.
Virtually <i>all</i> tasks and datatypes from Ant1.4.1 are available
Virtually <i>all</i> tasks and datatypes from Ant 1.4.1 are available
in this way.
</p>
<p>
@@ -169,20 +169,20 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Using an existing Ant1 build file"><strong>Using an existing Ant1 build file</strong></a>
<a name="Using an existing Ant 1 build file"><strong>Using an existing Ant 1 build file</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
Myrmidon will automatically handle Ant1 build files using the
Ant1 Compatibility layer. So, using an Ant1 build
Myrmidon will automatically handle Ant 1 build files using the
Ant 1 Compatibility layer. So, using an Ant 1 build
file with Myrmidon should be as simple as:</p>
<pre>[myrmidon-command] -f ant1-build-file.xml</pre>
<p>
This works as follows: When Myrmidon encounters a ".xml" build file which does not have a
<code>version</code> attribute on the top-level <code>project</code>
element, it assumes that it is an Ant1 build file. So all tasks are
element, it assumes that it is an Ant 1 build file. So all tasks are
interpreted as though they are prefixed with the "ant." name prefix.
</p>
</blockquote>
@@ -194,12 +194,12 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Building the compatibility layer"><strong>Building the compatibility layer</strong></a>
<a name="Building the compatibility layer"><strong>Building the compatibility layer</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>Before building the Ant1 Compatibility layer, you need to build
<p>Before building the Ant 1 Compatibility layer, you need to build
Myrmidon, running the <code>dist-lite</code> target of the main build.
See <a href="user.html#Building Myrmidon">the build instructions</a>
for more details.</p>


+ 30
- 24
proposal/myrmidon/docs/buildfile.html View File

@@ -46,13 +46,13 @@
</ul>
<p><strong>User Guide</strong></p>
<ul>
<li> <a href="./buildfile.html">Build file</a>
<li> <a href="./buildfile.html">Project File</a>
</li>
<li> <a href="./vfs.html">Virtual File System</a>
</li>
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a>
<li> <a href="./ant1compat.html">Ant 1 Compatibility Layer</a>
</li>
<li> <a href="./differences.html">Differences to Ant1</a>
<li> <a href="./differences.html">Differences to Ant 1</a>
</li>
<li> <a href="./task.html">My First Task</a>
</li>
@@ -78,15 +78,21 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Project File"><strong>Project File</strong></a>
<a name="Project File"><strong>Project File</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
The project file format is very similar to that of Ant 1. The root element of
the project file must be a <code>&lt;project&gt;</code> element. It can
take the following attributes:
A project file is an XML file that describes which tasks to execute, and in
which order to execute them in. A project can be broken up into several steps,
or <i>targets</i>. A target is simply a list of the tasks that need to be
executed to perform the step. A target may also include some dependency
information. Myrmidon makes sure that targets are executed in the correct order,
so that a target is executed before the targets that depend on it.</p>
<p>The project file format is very similar to the format used in Ant 1. The
root element of a project file must be a <code>&lt;project&gt;</code> element.
It can take the following attributes:
</p>
<table>
<tr>
@@ -125,7 +131,7 @@ take the following attributes:
<td bgcolor="#a0ddf0" colspan="" rowspan=""
valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
The base-name of the project file, with the extension removed.
The name of the project file, with the extension removed.
</font>
</td>
</tr>
@@ -181,7 +187,7 @@ take the following attributes:
<td bgcolor="#a0ddf0" colspan="" rowspan=""
valign="top" align="left">
<font color="#000000" size="-1" face="arial,helvetica,sanserif">
The project file version that the project is written for.
The project file format version that the project is written for.
</font>
</td>
<td bgcolor="#a0ddf0" colspan="" rowspan=""
@@ -197,15 +203,15 @@ A <code>&lt;project&gt;</code> element can contain the following elements,
in the order given below:
</p>
<ul>
<li><a href="#Project References"><code>&lt;projectref&gt;</code></a></li>
<li><a href="#Library Imports"><code>&lt;import&gt;</code></a></li>
<li><a href="#Implicit Tasks">Implicit tasks</a></li>
<li><a href="#Targets"><code>&lt;target&gt;</code></a></li>
<li><a href="#project-refs">Project references</a></li>
<li><a href="#antlib-imports">Library imports</a></li>
<li><a href="#init-tasks">Initialization tasks</a></li>
<li><a href="#targets">Targets</a></li>
</ul>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Project References"><strong>Project References</strong></a>
<a name="project-refs"><strong>Project References</strong></a>
</font>
</td></tr>
<tr><td>
@@ -276,7 +282,7 @@ A <code>&lt;projectref&gt;</code> element takes the following attributes:</p>
</table>
<p>
The targets of a referenced project can be used in the <code>depends</code> list
of a target in the referencing project, using the following syntax:
of a target in the referencing project, using the syntax
<code><i>project-name</i>-&gt;<i>target-name</i></code>. Here is a simple example:</p>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
@@ -314,7 +320,7 @@ of a target in the referencing project, using the following syntax:
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Library Imports"><strong>Library Imports</strong></a>
<a name="antlib-imports"><strong>Library Imports</strong></a>
</font>
</td></tr>
<tr><td>
@@ -447,14 +453,14 @@ the <code>my-tasks</code> antlib.</p>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Implicit Tasks"><strong>Implicit Tasks</strong></a>
<a name="init-tasks"><strong>Initialization Tasks</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>Implicit tasks are run before any of the project's targets are run. Any task
can be used, including <code>&lt;property&gt;</code> and data-type instances.
Implicit tasks can be used to initialise the project. For example:</p>
<p>Initialisation tasks are run before any of the project's targets are run, and
are used to initialise the project. Any task can be used as an initialization
task, including <code>&lt;property&gt;</code> and data-type instances. An example:</p>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
@@ -495,7 +501,7 @@ Implicit tasks can be used to initialise the project. For example:</p>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Targets"><strong>Targets</strong></a>
<a name="targets"><strong>Targets</strong></a>
</font>
</td></tr>
<tr><td>
@@ -575,7 +581,7 @@ following attributes:</p>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Tasks"><strong>Tasks</strong></a>
<a name="Tasks"><strong>Tasks</strong></a>
</font>
</td></tr>
<tr><td>
@@ -612,7 +618,7 @@ following attributes:</p>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Conditions"><strong>Conditions</strong></a>
<a name="Conditions"><strong>Conditions</strong></a>
</font>
</td></tr>
<tr><td>
@@ -640,7 +646,7 @@ following attributes:</p>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="File Name Mappers"><strong>File Name Mappers</strong></a>
<a name="File Name Mappers"><strong>File Name Mappers</strong></a>
</font>
</td></tr>
<tr><td>


+ 12
- 12
proposal/myrmidon/docs/classloader.html View File

@@ -11,7 +11,7 @@
<meta name="author" value="Peter Donald">
<meta name="email" value="peter@apache.org">
<title>Apache Myrmidon - On ClassLoaders in Ant2</title>
<title>Apache Myrmidon - On ClassLoaders in Ant 2</title>
</head>
<body bgcolor="#ffffff" text="#000000" link="#525D76">
@@ -46,13 +46,13 @@
</ul>
<p><strong>User Guide</strong></p>
<ul>
<li> <a href="./buildfile.html">Build file</a>
<li> <a href="./buildfile.html">Project File</a>
</li>
<li> <a href="./vfs.html">Virtual File System</a>
</li>
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a>
<li> <a href="./ant1compat.html">Ant 1 Compatibility Layer</a>
</li>
<li> <a href="./differences.html">Differences to Ant1</a>
<li> <a href="./differences.html">Differences to Ant 1</a>
</li>
<li> <a href="./task.html">My First Task</a>
</li>
@@ -78,14 +78,14 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="ClassLoader Management"><strong>ClassLoader Management</strong></a>
<a name="ClassLoader Management"><strong>ClassLoader Management</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>In many ways Ant2 needs to follow rules similar to a number of
<p>In many ways Ant 2 needs to follow rules similar to a number of
different application servers with respect to ClassLoader management.
Ant2 will create a number of different ClassLoaders that have access
Ant 2 will create a number of different ClassLoaders that have access
to different sets of resources (and thus Classes). The main reason
for this arrangment is to partition different sections of the
application such as the Container, the Task API, task/type libraries
@@ -97,7 +97,7 @@
in it's own store. In practice this means that all the classes (and static
variables defined by said classes) in a parent ClassLoader are shared with
the child ClassLoaders.</p>
<p>Using kooky ascii art, the specific ClassLoader structure for Ant2 is as
<p>Using kooky ascii art, the specific ClassLoader structure for Ant 2 is as
follows:</p>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
@@ -146,7 +146,7 @@
<li>
The
<strong>Common</strong> ClassLoader contains the classes and resources
that are made visible to both the Container and to all the ant type librarys. This
that are made visible to both the Container and to all the ant type libraries. This
contains all the classes that the Container uses to communicate with tasks and other
supporting infrastructure. In particular it contains the following APIs;

@@ -172,7 +172,7 @@
<strong>NOTE</strong>: These interfaces
are not to be used by user tasks but are made available so that certain tasks (such
as &lt;antcall/&gt;) can be implemented. However they are subject to change without
notice between between different ant2 versions.
notice between between different Ant 2 versions.

</li>
</ul>
@@ -188,7 +188,7 @@
<strong>Container</strong> ClassLoader contains all the classes and resources
that are part of the actual implementation of the Container. These classes are not
directly accessible to any Ant library or task. Some of the classes are indirectly
accessible to tasks and other elements defined in the ant librarys as they implement
accessible to tasks and other elements defined in the ant libraries as they implement
interfaces defined in the
<strong>Common</strong> ClassLoader. The classes that are
stored in jars in the
@@ -198,7 +198,7 @@
<li>
The
<strong>Shared</strong> ClassLoader contains all the classes and resources
that are shared across all of the ant librarys (unless they are als needed by the
that are shared across all of the ant libraries (unless they are als needed by the
container in which case they should be placed int the
<strong>Container</strong>
ClassLoader). This ClassLoader is populated by all the jars that are contained in


+ 14
- 14
proposal/myrmidon/docs/configuring.html View File

@@ -11,7 +11,7 @@
<meta name="author" value="Peter Donald">
<meta name="email" value="peter@apache.org">
<title>Apache Myrmidon - On Task Configuring in Ant2</title>
<title>Apache Myrmidon - On Task Configuring in Ant 2</title>
</head>
<body bgcolor="#ffffff" text="#000000" link="#525D76">
@@ -46,13 +46,13 @@
</ul>
<p><strong>User Guide</strong></p>
<ul>
<li> <a href="./buildfile.html">Build file</a>
<li> <a href="./buildfile.html">Project File</a>
</li>
<li> <a href="./vfs.html">Virtual File System</a>
</li>
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a>
<li> <a href="./ant1compat.html">Ant 1 Compatibility Layer</a>
</li>
<li> <a href="./differences.html">Differences to Ant1</a>
<li> <a href="./differences.html">Differences to Ant 1</a>
</li>
<li> <a href="./task.html">My First Task</a>
</li>
@@ -78,7 +78,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Introduction"><strong>Introduction</strong></a>
<a name="Introduction"><strong>Introduction</strong></a>
</font>
</td></tr>
<tr><td>
@@ -93,7 +93,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Names"><strong>Names</strong></a>
<a name="Names"><strong>Names</strong></a>
</font>
</td></tr>
<tr><td>
@@ -167,7 +167,7 @@ BaseDir ===&gt; BaseDir</pre></td>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Resolving Values"><strong>Resolving Values</strong></a>
<a name="Resolving Values"><strong>Resolving Values</strong></a>
</font>
</td></tr>
<tr><td>
@@ -191,7 +191,7 @@ BaseDir ===&gt; BaseDir</pre></td>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Modeller"><strong>Modeller</strong></a>
<a name="Modeller"><strong>Modeller</strong></a>
</font>
</td></tr>
<tr><td>
@@ -215,7 +215,7 @@ BaseDir ===&gt; BaseDir</pre></td>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Attributes"><strong>Attributes</strong></a>
<a name="Attributes"><strong>Attributes</strong></a>
</font>
</td></tr>
<tr><td>
@@ -250,7 +250,7 @@ BaseDir ===&gt; BaseDir</pre></td>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Content"><strong>Content</strong></a>
<a name="Content"><strong>Content</strong></a>
</font>
</td></tr>
<tr><td>
@@ -267,7 +267,7 @@ BaseDir ===&gt; BaseDir</pre></td>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Element"><strong>Element</strong></a>
<a name="Element"><strong>Element</strong></a>
</font>
</td></tr>
<tr><td>
@@ -281,7 +281,7 @@ BaseDir ===&gt; BaseDir</pre></td>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Named Elements"><strong>Named Elements</strong></a>
<a name="Named Elements"><strong>Named Elements</strong></a>
</font>
</td></tr>
<tr><td>
@@ -315,7 +315,7 @@ BaseDir ===&gt; BaseDir</pre></td>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Referrenced Elements"><strong>Referrenced Elements</strong></a>
<a name="Referrenced Elements"><strong>Referrenced Elements</strong></a>
</font>
</td></tr>
<tr><td>
@@ -364,7 +364,7 @@ BaseDir ===&gt; BaseDir</pre></td>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Typed Elements"><strong>Typed Elements</strong></a>
<a name="Typed Elements"><strong>Typed Elements</strong></a>
</font>
</td></tr>
<tr><td>


+ 5
- 5
proposal/myrmidon/docs/differences.html View File

@@ -11,7 +11,7 @@
<meta name="author" value="Adam Murdoch">
<meta name="email" value="adammurdoch@apache.org">
<title>Apache Myrmidon - Differences to Ant1</title>
<title>Apache Myrmidon - Differences to Ant 1</title>
</head>
<body bgcolor="#ffffff" text="#000000" link="#525D76">
@@ -46,13 +46,13 @@
</ul>
<p><strong>User Guide</strong></p>
<ul>
<li> <a href="./buildfile.html">Build file</a>
<li> <a href="./buildfile.html">Project File</a>
</li>
<li> <a href="./vfs.html">Virtual File System</a>
</li>
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a>
<li> <a href="./ant1compat.html">Ant 1 Compatibility Layer</a>
</li>
<li> <a href="./differences.html">Differences to Ant1</a>
<li> <a href="./differences.html">Differences to Ant 1</a>
</li>
<li> <a href="./task.html">My First Task</a>
</li>
@@ -78,7 +78,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Differences to Ant 1.x"><strong>Differences to Ant 1.x</strong></a>
<a name="Differences to Ant 1.x"><strong>Differences to Ant 1.x</strong></a>
</font>
</td></tr>
<tr><td>


+ 9
- 8
proposal/myrmidon/docs/getinvolved.html View File

@@ -46,13 +46,13 @@
</ul>
<p><strong>User Guide</strong></p>
<ul>
<li> <a href="./buildfile.html">Build file</a>
<li> <a href="./buildfile.html">Project File</a>
</li>
<li> <a href="./vfs.html">Virtual File System</a>
</li>
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a>
<li> <a href="./ant1compat.html">Ant 1 Compatibility Layer</a>
</li>
<li> <a href="./differences.html">Differences to Ant1</a>
<li> <a href="./differences.html">Differences to Ant 1</a>
</li>
<li> <a href="./task.html">My First Task</a>
</li>
@@ -78,15 +78,16 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Get Involved"><strong>Get Involved</strong></a>
<a name="Get Involved"><strong>Get Involved</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>There are plenty of things you can do to help out with Myrmidon. The Todo
list below describes items which still need to be done. Of course, since
this is an open-source project, there's plenty of scope for experimentation,
and you can pretty much make up your own items to work on.</p>
<p>There are plenty of things you can do to help out with Myrmidon. The
<a href="todo.html">Todo list </a> describes items which still need to
be done. Of course, since this is an open-source project, there's
plenty of scope for experimentation, and you can pretty much make up
your own items to work on.</p>
<p>Some things that are worth reading if you do want to get involved:</p>
<ul>
<li>The <a href="http://jakarta.apache.org/ant/ant2/">Ant 2</a> goals and requirements.</li>


+ 10
- 10
proposal/myrmidon/docs/index.html View File

@@ -46,13 +46,13 @@
</ul>
<p><strong>User Guide</strong></p>
<ul>
<li> <a href="./buildfile.html">Build file</a>
<li> <a href="./buildfile.html">Project File</a>
</li>
<li> <a href="./vfs.html">Virtual File System</a>
</li>
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a>
<li> <a href="./ant1compat.html">Ant 1 Compatibility Layer</a>
</li>
<li> <a href="./differences.html">Differences to Ant1</a>
<li> <a href="./differences.html">Differences to Ant 1</a>
</li>
<li> <a href="./task.html">My First Task</a>
</li>
@@ -78,7 +78,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="What is Ant?"><strong>What is Ant?</strong></a>
<a name="What is Ant?"><strong>What is Ant?</strong></a>
</font>
</td></tr>
<tr><td>
@@ -102,13 +102,13 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="What is Myrmidon?"><strong>What is Myrmidon?</strong></a>
<a name="What is Myrmidon?"><strong>What is Myrmidon?</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>Myrmidon is a proposal for Ant 2. Ant2 is the next evolution of the
Ant build tool aimed at removing many of the limitations of the Ant1.x
<p>Myrmidon is a proposal for Ant 2. Ant 2 is the next evolution of the
Ant build tool aimed at removing many of the limitations of the Ant 1.x
product. In particular it aims to;</p>
<ul>
<li>Remove ambiguities and points of confusion for build file
@@ -118,7 +118,7 @@
<li>Simplify development of tasks by task-writers.</li>
<li>Enable ad-hoc "tasks" to be written inside build file,
probably using well known scripting languages such as python and
javascript. (Possible in ant1.x but prohibitively difficult).</li>
javascript. (Possible in Ant 1.x but prohibitively difficult).</li>
<li>Integrate templating technologies such as XSLT, velocity etc
to enable development of reusable build file elements.</li>
</ul>
@@ -131,14 +131,14 @@
is an example of such a tool, which could be assembled using the Myrmidon
task container, and a library of build related tasks. In the future expect
to see Testing frameworks, Job Schedulers (ie Cron managers), shells
and install tools based on the myrmidon base.</p>
and install tools based on the Myrmidon base.</p>
</blockquote>
</td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="A Rose by any other name ..."><strong>A Rose by any other name ...</strong></a>
<a name="A Rose by any other name ..."><strong>A Rose by any other name ...</strong></a>
</font>
</td></tr>
<tr><td>


+ 15
- 15
proposal/myrmidon/docs/librarys.html View File

@@ -11,7 +11,7 @@
<meta name="author" value="Peter Donald">
<meta name="email" value="peter@apache.org">
<title>Apache Myrmidon - On Librarys in Ant2</title>
<title>Apache Myrmidon - On Libraries in Ant 2</title>
</head>
<body bgcolor="#ffffff" text="#000000" link="#525D76">
@@ -46,13 +46,13 @@
</ul>
<p><strong>User Guide</strong></p>
<ul>
<li> <a href="./buildfile.html">Build file</a>
<li> <a href="./buildfile.html">Project File</a>
</li>
<li> <a href="./vfs.html">Virtual File System</a>
</li>
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a>
<li> <a href="./ant1compat.html">Ant 1 Compatibility Layer</a>
</li>
<li> <a href="./differences.html">Differences to Ant1</a>
<li> <a href="./differences.html">Differences to Ant 1</a>
</li>
<li> <a href="./task.html">My First Task</a>
</li>
@@ -78,17 +78,17 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Library Management"><strong>Library Management</strong></a>
<a name="Library Management"><strong>Library Management</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>Long ago there was identified the need for librarys that contain
<p>Long ago there was identified the need for libraries that contain
tasks and other elements present in the build file. This document
attempts to describe the mechanism via which these libraries will be
defined and used in Ant2. The librarys (also referred to as
defined and used in Ant 2. The libraries (also referred to as
deployments) will be termed antlibs.</p>
<p>Ant librarys can be packaged and signed into a ANt Type Library
<p>Ant libraries can be packaged and signed into a ANt Type Library
format (.atl) using the standard Java Archive tools. (For details on
the .jar file format see the

@@ -103,7 +103,7 @@
library defines. It may also contain additional resources that can
be referenced in the build file (an example being DTDs).
</p>
<p>The library may also need access to other librarys or resources
<p>The library may also need access to other libraries or resources
to perform its job. For instance, if the task loaded an XML document
and then processed said document using the
<em>Trax API</em> then
@@ -123,7 +123,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Descriptors"><strong>Descriptors</strong></a>
<a name="Descriptors"><strong>Descriptors</strong></a>
</font>
</td></tr>
<tr><td>
@@ -135,7 +135,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Class and Resource Files"><strong>Class and Resource Files</strong></a>
<a name="Class and Resource Files"><strong>Class and Resource Files</strong></a>
</font>
</td></tr>
<tr><td>
@@ -154,7 +154,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Dependencies"><strong>Dependencies</strong></a>
<a name="Dependencies"><strong>Dependencies</strong></a>
</font>
</td></tr>
<tr><td>
@@ -163,7 +163,7 @@
example given above described dependence on an external XML library. The
ant library thus needs a mechanism via which to declare dependencies on
external libraries.</p>
<p>Ant2 uses the "Optional Package" mechanism. Prior to JDK1.3, an "Optional
<p>Ant 2 uses the "Optional Package" mechanism. Prior to JDK1.3, an "Optional
Package" was known as an
<em>Extension</em>. The specification for this
mechanism is available in the JDK1.3 documentation in the directory
@@ -269,7 +269,7 @@ trax-Implementation-Vendor: Apache Software Foundation
</tr>
</table>
</div>
<p>To make other jars available to Ant librarys as "Optional Packages"
<p>To make other jars available to Ant libraries as "Optional Packages"
or Extensions then you need to add a few lines to the manifest of the
other jar. The minimal manifest is the following;</p>
<div align="left">
@@ -304,7 +304,7 @@ Specification-Version: 1.0
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Implementation Notes"><strong>Implementation Notes</strong></a>
<a name="Implementation Notes"><strong>Implementation Notes</strong></a>
</font>
</td></tr>
<tr><td>


+ 6
- 6
proposal/myrmidon/docs/task.html View File

@@ -46,13 +46,13 @@
</ul>
<p><strong>User Guide</strong></p>
<ul>
<li> <a href="./buildfile.html">Build file</a>
<li> <a href="./buildfile.html">Project File</a>
</li>
<li> <a href="./vfs.html">Virtual File System</a>
</li>
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a>
<li> <a href="./ant1compat.html">Ant 1 Compatibility Layer</a>
</li>
<li> <a href="./differences.html">Differences to Ant1</a>
<li> <a href="./differences.html">Differences to Ant 1</a>
</li>
<li> <a href="./task.html">My First Task</a>
</li>
@@ -78,12 +78,12 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="My First Task"><strong>My First Task</strong></a>
<a name="My First Task"><strong>My First Task</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>In ant1 it was very easy to write your own task. In Ant2 we plan
<p>In Ant 1 it was very easy to write your own task. In Ant 2 we plan
to make it even easier. To write a basic task simply follow the following
formula.</p>
<ol>
@@ -126,7 +126,7 @@ formula.</p>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="A Basic Example"><strong>A Basic Example</strong></a>
<a name="A Basic Example"><strong>A Basic Example</strong></a>
</font>
</td></tr>
<tr><td>


+ 46
- 44
proposal/myrmidon/docs/todo.html View File

@@ -48,13 +48,13 @@
</ul>
<p><strong>User Guide</strong></p>
<ul>
<li> <a href="./buildfile.html">Build file</a>
<li> <a href="./buildfile.html">Project File</a>
</li>
<li> <a href="./vfs.html">Virtual File System</a>
</li>
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a>
<li> <a href="./ant1compat.html">Ant 1 Compatibility Layer</a>
</li>
<li> <a href="./differences.html">Differences to Ant1</a>
<li> <a href="./differences.html">Differences to Ant 1</a>
</li>
<li> <a href="./task.html">My First Task</a>
</li>
@@ -80,7 +80,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Todo List"><strong>Todo List</strong></a>
<a name="Todo List"><strong>Todo List</strong></a>
</font>
</td></tr>
<tr><td>
@@ -92,13 +92,13 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Integrate XDocs proposal"><strong>Integrate XDocs proposal</strong></a>
<a name="Integrate XDocs proposal"><strong>Integrate XDocs proposal</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>Integrate with the XDocs proposal that generates XML documentation for
tasks. Rework that proposal so that it knows about the myrmidon specific
tasks. Rework that proposal so that it knows about the Myrmidon specific
patterns and features. Also rework it so that it can support reading
documentation and examples from side-by-side the task.</p>
</blockquote>
@@ -107,7 +107,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="TaskInfo"><strong>TaskInfo</strong></a>
<a name="TaskInfo"><strong>TaskInfo</strong></a>
</font>
</td></tr>
<tr><td>
@@ -121,7 +121,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="XML Catalog to load XML Fragments"><strong>XML Catalog to load XML Fragments</strong></a>
<a name="XML Catalog to load XML Fragments"><strong>XML Catalog to load XML Fragments</strong></a>
</font>
</td></tr>
<tr><td>
@@ -139,7 +139,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Refactor Java Infrastructure into a Service"><strong>Refactor Java Infrastructure into a Service</strong></a>
<a name="Refactor Java Infrastructure into a Service"><strong>Refactor Java Infrastructure into a Service</strong></a>
</font>
</td></tr>
<tr><td>
@@ -152,7 +152,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Structural Dependency Utils"><strong>Structural Dependency Utils</strong></a>
<a name="Structural Dependency Utils"><strong>Structural Dependency Utils</strong></a>
</font>
</td></tr>
<tr><td>
@@ -241,7 +241,7 @@ File[] files = cm.getOutOfDate();
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Antlibs storing templates"><strong>Antlibs storing templates</strong></a>
<a name="Antlibs storing templates"><strong>Antlibs storing templates</strong></a>
</font>
</td></tr>
<tr><td>
@@ -257,7 +257,7 @@ File[] files = cm.getOutOfDate();
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Antlibs Storing General Resources"><strong>Antlibs Storing General Resources</strong></a>
<a name="Antlibs Storing General Resources"><strong>Antlibs Storing General Resources</strong></a>
</font>
</td></tr>
<tr><td>
@@ -272,7 +272,7 @@ File[] files = cm.getOutOfDate();
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Coloring API"><strong>Coloring API</strong></a>
<a name="Coloring API"><strong>Coloring API</strong></a>
</font>
</td></tr>
<tr><td>
@@ -328,7 +328,7 @@ File[] files = cm.getOutOfDate();
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Create Task/Element/Attribute Naming guidelines"><strong>Create Task/Element/Attribute Naming guidelines</strong></a>
<a name="Create Task/Element/Attribute Naming guidelines"><strong>Create Task/Element/Attribute Naming guidelines</strong></a>
</font>
</td></tr>
<tr><td>
@@ -349,7 +349,7 @@ File[] files = cm.getOutOfDate();
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Rethink Notification/Event scheme"><strong>Rethink Notification/Event scheme</strong></a>
<a name="Rethink Notification/Event scheme"><strong>Rethink Notification/Event scheme</strong></a>
</font>
</td></tr>
<tr><td>
@@ -365,7 +365,7 @@ File[] files = cm.getOutOfDate();
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="XPath-like Locators for tasks"><strong>XPath-like Locators for tasks</strong></a>
<a name="XPath-like Locators for tasks"><strong>XPath-like Locators for tasks</strong></a>
</font>
</td></tr>
<tr><td>
@@ -386,7 +386,7 @@ File[] files = cm.getOutOfDate();
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Embeddor HOWTO"><strong>Embeddor HOWTO</strong></a>
<a name="Embeddor HOWTO"><strong>Embeddor HOWTO</strong></a>
</font>
</td></tr>
<tr><td>
@@ -400,7 +400,7 @@ File[] files = cm.getOutOfDate();
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Optional Dependencies"><strong>Optional Dependencies</strong></a>
<a name="Optional Dependencies"><strong>Optional Dependencies</strong></a>
</font>
</td></tr>
<tr><td>
@@ -418,7 +418,7 @@ File[] files = cm.getOutOfDate();
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Facade task HOWTO"><strong>Facade task HOWTO</strong></a>
<a name="Facade task HOWTO"><strong>Facade task HOWTO</strong></a>
</font>
</td></tr>
<tr><td>
@@ -434,19 +434,19 @@ File[] files = cm.getOutOfDate();
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Mail tasks"><strong>Mail tasks</strong></a>
<a name="Mail tasks"><strong>Mail tasks</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>Convert the ant1.x Mail tasks to myrmidon.</p>
<p>Convert the Ant 1.x Mail tasks to Myrmidon.</p>
</blockquote>
</td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Security Manager"><strong>Security Manager</strong></a>
<a name="Security Manager"><strong>Security Manager</strong></a>
</font>
</td></tr>
<tr><td>
@@ -491,7 +491,7 @@ public class MyrmidonSecurityManager
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Self Hosting"><strong>Self Hosting</strong></a>
<a name="Self Hosting"><strong>Self Hosting</strong></a>
</font>
</td></tr>
<tr><td>
@@ -507,7 +507,7 @@ public class MyrmidonSecurityManager
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Validation Pass"><strong>Validation Pass</strong></a>
<a name="Validation Pass"><strong>Validation Pass</strong></a>
</font>
</td></tr>
<tr><td>
@@ -521,7 +521,7 @@ public class MyrmidonSecurityManager
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Paths"><strong>Paths</strong></a>
<a name="Paths"><strong>Paths</strong></a>
</font>
</td></tr>
<tr><td>
@@ -555,30 +555,30 @@ public class MyrmidonSecurityManager
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Ant 1.x Compatibility"><strong>Ant 1.x Compatibility</strong></a>
<a name="Ant 1.x Compatibility"><strong>Ant 1.x Compatibility</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>The Ant1 Compatibility layer is still in early stages of development.
<p>The Ant 1 Compatibility layer is still in early stages of development.
</p>
<ul>
<li>Get a version of <code>&lt;antcall&gt;</code> working.</li>
<li>
Provide hooks between Ant1 references and Myrmidon properties.
May use converters for adapting Ant2 objects (like Ant2
Provide hooks between Ant 1 references and Myrmidon properties.
May use converters for adapting Ant 2 objects (like Ant 2
<code>&lt;path&gt;</code> or <code>&lt;fileset&gt;</code>)
as Ant1 types.
as Ant 1 types.
</li>
<li>
Missing tests:
<ul>
<li>Make sure properties are shared between Ant1 and Myrmidon tasks.</li>
<li>Make sure properties are shared between Ant 1 and Myrmidon tasks.</li>
</ul>
</li>
<li>Get GUMP runs going using Myrmidon.</li>
<li>Add protected accessors for get/set/list properties in
Ant1 Project, to minimise the amount of code duplication in
Ant 1 Project, to minimise the amount of code duplication in
Ant1CompatProject.</li>
</ul>
</blockquote>
@@ -587,7 +587,7 @@ public class MyrmidonSecurityManager
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Virtual File System"><strong>Virtual File System</strong></a>
<a name="Virtual File System"><strong>Virtual File System</strong></a>
</font>
</td></tr>
<tr><td>
@@ -622,7 +622,7 @@ public class MyrmidonSecurityManager
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="File Data-Types and Tasks"><strong>File Data-Types and Tasks</strong></a>
<a name="File Data-Types and Tasks"><strong>File Data-Types and Tasks</strong></a>
</font>
</td></tr>
<tr><td>
@@ -724,7 +724,7 @@ public class MyrmidonSecurityManager
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Command-line and Configuration Files"><strong>Command-line and Configuration Files</strong></a>
<a name="Command-line and Configuration Files"><strong>Command-line and Configuration Files</strong></a>
</font>
</td></tr>
<tr><td>
@@ -760,7 +760,7 @@ public class MyrmidonSecurityManager
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Scripting"><strong>Scripting</strong></a>
<a name="Scripting"><strong>Scripting</strong></a>
</font>
</td></tr>
<tr><td>
@@ -781,7 +781,7 @@ public class MyrmidonSecurityManager
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Documentation"><strong>Documentation</strong></a>
<a name="Documentation"><strong>Documentation</strong></a>
</font>
</td></tr>
<tr><td>
@@ -810,7 +810,7 @@ public class MyrmidonSecurityManager
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Miscellaneous"><strong>Miscellaneous</strong></a>
<a name="Miscellaneous"><strong>Miscellaneous</strong></a>
</font>
</td></tr>
<tr><td>
@@ -837,9 +837,6 @@ public class MyrmidonSecurityManager
<code>&lt;socket&gt;</code>
conditions to an antlib. Need to resolve how these will be passed a logger.
</li>
<li>Allow the
<code>&lt;if&gt;</code> task to take any condition implementation.
</li>
<li>Add an else block to the
<code>&lt;if&gt;</code> task.
</li>
@@ -860,11 +857,16 @@ public class MyrmidonSecurityManager
directories as part of a library classpath.
</li>
<li><code>&lt;condition&gt;</code> should set the property
value to <code>false</code> when the condition is false.</li>
value to <code>false</code> when the condition is false.</li>
<li>Split the <code>&lt;uptodate&gt;</code> condition into
a condition that checks against a single target file,
and one which checks using a destdir/mapper.</li>
a condition that checks against a single target file,
and one which checks using a destdir/mapper.</li>
<li>Add condition implementations to: check JVM version,
check Ant version, check whether a particular antlib or extension is
available, match a string against a regular expression.</li>
<li>Add a task to unset a property.</li>
<li>Change the various def and import task to allow a classpath
to be provided.</li>
<li>Unit tests.</li>
</ul>
</blockquote>


+ 12
- 12
proposal/myrmidon/docs/user.html View File

@@ -46,13 +46,13 @@
</ul>
<p><strong>User Guide</strong></p>
<ul>
<li> <a href="./buildfile.html">Build file</a>
<li> <a href="./buildfile.html">Project File</a>
</li>
<li> <a href="./vfs.html">Virtual File System</a>
</li>
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a>
<li> <a href="./ant1compat.html">Ant 1 Compatibility Layer</a>
</li>
<li> <a href="./differences.html">Differences to Ant1</a>
<li> <a href="./differences.html">Differences to Ant 1</a>
</li>
<li> <a href="./task.html">My First Task</a>
</li>
@@ -78,14 +78,14 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Building Myrmidon"><strong>Building Myrmidon</strong></a>
<a name="Building Myrmidon"><strong>Building Myrmidon</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
First, you will need to fetch the Myrmidon source from CVS. The source
can be source in the <code>proposal/myrmidon</code> directory of the
can be found in the <code>proposal/myrmidon</code> directory of the
Ant source tree. You should check out the <code>jakarta-ant</code> CVS
module, as described
<a href="http://jakarta.apache.org/site/cvsindex.html">here</a>.
@@ -167,7 +167,7 @@ files are found in the <code>lib</code> directory:</p>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Running Myrmidon"><strong>Running Myrmidon</strong></a>
<a name="Running Myrmidon"><strong>Running Myrmidon</strong></a>
</font>
</td></tr>
<tr><td>
@@ -178,7 +178,7 @@ To run Myrmidon, use one of the following methods:
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Launcher Script"><strong>Launcher Script</strong></a>
<a name="Launcher Script"><strong>Launcher Script</strong></a>
</font>
</td></tr>
<tr><td>
@@ -258,7 +258,7 @@ variables can be used, but are not required (except on Windows 9x - see below).
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Executable Jar File"><strong>Executable Jar File</strong></a>
<a name="Executable Jar File"><strong>Executable Jar File</strong></a>
</font>
</td></tr>
<tr><td>
@@ -275,10 +275,10 @@ prompt&gt; <i>java</i> -jar <i>ant-home</i>/bin/myrmidon-launcher.jar <i>options
</table>
<p>When started, Myrmidon looks for a project file called <code>build.ant</code>
in the current directory. A different project file can be specified using the
<code>-f</code> command-line option. Myrmidon executes the targets given on
the command-line, or the default target if none is given. For example, the
following executes the targets <code>clean</code> and <code>build</code> from
the project file <code>my-project.xml</code>:</p>
<code>-f</code> command-line option. Myrmidon executes the targets that are
listed on the command-line, or the default target if none is given. For
example, the following command executes targets <code>clean</code> and
<code>build</code> from project file <code>my-project.xml</code>:</p>
<pre>
prompt&gt; ant -f my-project.xml clean build
</pre>


+ 7
- 7
proposal/myrmidon/docs/vfs.html View File

@@ -46,13 +46,13 @@
</ul>
<p><strong>User Guide</strong></p>
<ul>
<li> <a href="./buildfile.html">Build file</a>
<li> <a href="./buildfile.html">Project File</a>
</li>
<li> <a href="./vfs.html">Virtual File System</a>
</li>
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a>
<li> <a href="./ant1compat.html">Ant 1 Compatibility Layer</a>
</li>
<li> <a href="./differences.html">Differences to Ant1</a>
<li> <a href="./differences.html">Differences to Ant 1</a>
</li>
<li> <a href="./task.html">My First Task</a>
</li>
@@ -78,7 +78,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Handling Files"><strong>Handling Files</strong></a>
<a name="Handling Files"><strong>Handling Files</strong></a>
</font>
</td></tr>
<tr><td>
@@ -213,7 +213,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="File Sets"><strong>File Sets</strong></a>
<a name="File Sets"><strong>File Sets</strong></a>
</font>
</td></tr>
<tr><td>
@@ -354,7 +354,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Paths"><strong>Paths</strong></a>
<a name="Paths"><strong>Paths</strong></a>
</font>
</td></tr>
<tr><td>
@@ -370,7 +370,7 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="File Selectors"><strong>File Selectors</strong></a>
<a name="File Selectors"><strong>File Selectors</strong></a>
</font>
</td></tr>
<tr><td>


+ 19
- 19
proposal/myrmidon/src/xdocs/ant1compat.xml View File

@@ -2,32 +2,32 @@

<properties>
<author email="darrell at apache dot org">Darrell DeBoer</author>
<title>Ant1 Compatibitlity Layer</title>
<title>Ant 1 Compatibitlity Layer</title>
</properties>

<body>

<section name="Overview">
<p>
The Myrmidon-Ant1 Compatibility layer works by reusing most of the Ant1 code,
The Myrmidon-Ant1 Compatibility layer works by reusing most of the Ant 1 code,
with tasks and datatypes
being prefixed with "ant1." in build files. Almost all of the main Ant1 tree
being prefixed with "ant1." in build files. Almost all of the main Ant 1 tree
is included in the compatibility layer antlib. To insulate from changes in
the Ant1 tree, Ant1 class files are extracted from a jar, rather than
the Ant 1 tree, Ant 1 class files are extracted from a jar, rather than
being compiled from scratch.
</p>
<p>
Here's how it works: The first time an Ant1 task is encountered, an Ant1
Here's how it works: The first time an Ant 1 task is encountered, an Ant 1
project is created, and stored in the TaskContext under the name "ant1.project".
The Ant1 versions of Task and Project have been extended, overriding core behaviour,
The Ant 1 versions of Task and Project have been extended, overriding core behaviour,
with Myrmidon-specific behaviour.
</p>
<p>
The updated version of Task implements Configurable, receiving it's
complete Task Model, and actually setting/adding/creating attributes
with the help of the IntrospectionHelper. This process is designed to
mimic the Ant1 configuration policy, although not <i>all</i> of the
subtle variations of configuration present in Ant1 are handled.
mimic the Ant 1 configuration policy, although not <i>all</i> of the
subtle variations of configuration present in Ant 1 are handled.
</p>
<p>
The updated version of Project will provide hooks into the Myrmidon TaskContext,
@@ -40,17 +40,17 @@
</ul>

<p>
So at present, properties declared in Ant2 tasks are available to all Ant1 tasks,
So at present, properties declared in Ant 2 tasks are available to all Ant 1 tasks,
and vice-versa. However, while a <code>&lt;ant1.path&gt;</code> reference works fine
in other <code>&lt;ant1.XXX&gt;</code>
tasks, it's not visible to Ant2 tasks in the same build, and vice-versa.
tasks, it's not visible to Ant 2 tasks in the same build, and vice-versa.
</p>

<p>
The <code>&lt;taskdef&gt;</code> task works ok, registering the task with the TypeManager using the
"ant1." prefix. Only a couple of DataTypes (Path and Patternset) are working
as top-level types, but this should be just a matter of adding references to
the Ant1 version of TypeInstanceTask in the descriptor.
the Ant 1 version of TypeInstanceTask in the descriptor.
</p>

<p>
@@ -62,12 +62,12 @@
</section>

<section name="Using the compatibility layer">
<subsection name="Using Ant1 tasks in a Myrmidon build file">
<subsection name="Using Ant 1 tasks in a Myrmidon build file">
<p>
If you have a Myrmidon build file (eg with <code>version="2.0"</code>
on the project element, you can use Ant1 tasks and datatypes by using
on the project element, you can use Ant 1 tasks and datatypes by using
the "ant1." suffix on the regular element name.
Virtually <i>all</i> tasks and datatypes from Ant1.4.1 are available
Virtually <i>all</i> tasks and datatypes from Ant 1.4.1 are available
in this way.
</p>
<p>
@@ -78,16 +78,16 @@
</p>
</subsection>

<subsection name="Using an existing Ant1 build file">
<subsection name="Using an existing Ant 1 build file">
<p>
Myrmidon will automatically handle Ant1 build files using the
Ant1 Compatibility layer. So, using an Ant1 build
Myrmidon will automatically handle Ant 1 build files using the
Ant 1 Compatibility layer. So, using an Ant 1 build
file with Myrmidon should be as simple as:</p>
<pre>[myrmidon-command] -f ant1-build-file.xml</pre>
<p>
This works as follows: When Myrmidon encounters a ".xml" build file which does not have a
<code>version</code> attribute on the top-level <code>project</code>
element, it assumes that it is an Ant1 build file. So all tasks are
element, it assumes that it is an Ant 1 build file. So all tasks are
interpreted as though they are prefixed with the "ant." name prefix.
</p>

@@ -96,7 +96,7 @@
</section>

<section name="Building the compatibility layer">
<p>Before building the Ant1 Compatibility layer, you need to build
<p>Before building the Ant 1 Compatibility layer, you need to build
Myrmidon, running the <code>dist-lite</code> target of the main build.
See <a href="user.html#Building Myrmidon">the build instructions</a>
for more details.</p>


+ 24
- 17
proposal/myrmidon/src/xdocs/buildfile.xml View File

@@ -10,9 +10,16 @@
<section name="Project File">

<p>
The project file format is very similar to that of Ant 1. The root element of
the project file must be a <code>&lt;project&gt;</code> element. It can
take the following attributes:
A project file is an XML file that describes which tasks to execute, and in
which order to execute them in. A project can be broken up into several steps,
or <i>targets</i>. A target is simply a list of the tasks that need to be
executed to perform the step. A target may also include some dependency
information. Myrmidon makes sure that targets are executed in the correct order,
so that a target is executed before the targets that depend on it.</p>

<p>The project file format is very similar to the format used in Ant 1. The
root element of a project file must be a <code>&lt;project&gt;</code> element.
It can take the following attributes:
</p>

<table>
@@ -20,7 +27,7 @@ take the following attributes:
<tr>
<td>name</td>
<td>The project name.</td>
<td>The base-name of the project file, with the extension removed.</td>
<td>The name of the project file, with the extension removed.</td>
</tr>
<tr>
<td>basedir</td>
@@ -36,7 +43,7 @@ take the following attributes:
</tr>
<tr>
<td>version</td>
<td>The project file version that the project is written for.</td>
<td>The project file format version that the project is written for.</td>
<td>None, must be <code>2.0</code></td>
</tr>
</table>
@@ -47,13 +54,13 @@ in the order given below:
</p>

<ul>
<li><a href="#Project References"><code>&lt;projectref&gt;</code></a></li>
<li><a href="#Library Imports"><code>&lt;import&gt;</code></a></li>
<li><a href="#Implicit Tasks">Implicit tasks</a></li>
<li><a href="#Targets"><code>&lt;target&gt;</code></a></li>
<li><a href="#project-refs">Project references</a></li>
<li><a href="#antlib-imports">Library imports</a></li>
<li><a href="#init-tasks">Initialization tasks</a></li>
<li><a href="#targets">Targets</a></li>
</ul>

<subsection name="Project References">
<subsection name="Project References" anchor="project-refs">

<p>Project references allow the project to import, or reference, other projects.
A <code>&lt;projectref&gt;</code> element takes the following attributes:</p>
@@ -74,7 +81,7 @@ A <code>&lt;projectref&gt;</code> element takes the following attributes:</p>

<p>
The targets of a referenced project can be used in the <code>depends</code> list
of a target in the referencing project, using the following syntax:
of a target in the referencing project, using the syntax
<code><i>project-name</i>-><i>target-name</i></code>. Here is a simple example:</p>

<source><![CDATA[
@@ -92,7 +99,7 @@ of a target in the referencing project, using the following syntax:

</subsection>

<subsection name="Library Imports">
<subsection name="Library Imports" anchor="antlib-imports">

<p>Library imports allow the project to import the tasks and data-types from an
antlib. An <code>&lt;import&gt;</code> element takes the following attributes:</p>
@@ -141,11 +148,11 @@ the <code>my-tasks</code> antlib.</p>

</subsection>

<subsection name="Implicit Tasks">
<subsection name="Initialization Tasks" anchor="init-tasks">

<p>Implicit tasks are run before any of the project's targets are run. Any task
can be used, including <code>&lt;property&gt;</code> and data-type instances.
Implicit tasks can be used to initialise the project. For example:</p>
<p>Initialisation tasks are run before any of the project's targets are run, and
are used to initialise the project. Any task can be used as an initialization
task, including <code>&lt;property&gt;</code> and data-type instances. An example:</p>

<source><![CDATA[

@@ -166,7 +173,7 @@ Implicit tasks can be used to initialise the project. For example:</p>

</subsection>

<subsection name="Targets">
<subsection name="Targets" anchor="targets">

<p>Targets have a similar format to targets in Ant 1.x, though some of the
behaviour is different. A <code>&lt;target&gt;</code> element takes the


+ 8
- 8
proposal/myrmidon/src/xdocs/classloader.xml View File

@@ -2,7 +2,7 @@
<document>

<properties>
<title>On ClassLoaders in Ant2</title>
<title>On ClassLoaders in Ant 2</title>
<author email="peter@apache.org">Peter Donald</author>
</properties>

@@ -10,9 +10,9 @@

<section name="ClassLoader Management">

<p>In many ways Ant2 needs to follow rules similar to a number of
<p>In many ways Ant 2 needs to follow rules similar to a number of
different application servers with respect to ClassLoader management.
Ant2 will create a number of different ClassLoaders that have access
Ant 2 will create a number of different ClassLoaders that have access
to different sets of resources (and thus Classes). The main reason
for this arrangment is to partition different sections of the
application such as the Container, the Task API, task/type libraries
@@ -26,7 +26,7 @@
variables defined by said classes) in a parent ClassLoader are shared with
the child ClassLoaders.</p>

<p>Using kooky ascii art, the specific ClassLoader structure for Ant2 is as
<p>Using kooky ascii art, the specific ClassLoader structure for Ant 2 is as
follows:</p>

<source>
@@ -59,7 +59,7 @@
<li>
The
<strong>Common</strong> ClassLoader contains the classes and resources
that are made visible to both the Container and to all the ant type librarys. This
that are made visible to both the Container and to all the ant type libraries. This
contains all the classes that the Container uses to communicate with tasks and other
supporting infrastructure. In particular it contains the following APIs;

@@ -85,7 +85,7 @@
<strong>NOTE</strong>: These interfaces
are not to be used by user tasks but are made available so that certain tasks (such
as &lt;antcall/&gt;) can be implemented. However they are subject to change without
notice between between different ant2 versions.
notice between between different Ant 2 versions.

</li>
</ul>
@@ -101,7 +101,7 @@
<strong>Container</strong> ClassLoader contains all the classes and resources
that are part of the actual implementation of the Container. These classes are not
directly accessible to any Ant library or task. Some of the classes are indirectly
accessible to tasks and other elements defined in the ant librarys as they implement
accessible to tasks and other elements defined in the ant libraries as they implement
interfaces defined in the
<strong>Common</strong> ClassLoader. The classes that are
stored in jars in the
@@ -111,7 +111,7 @@
<li>
The
<strong>Shared</strong> ClassLoader contains all the classes and resources
that are shared across all of the ant librarys (unless they are als needed by the
that are shared across all of the ant libraries (unless they are als needed by the
container in which case they should be placed int the
<strong>Container</strong>
ClassLoader). This ClassLoader is populated by all the jars that are contained in


+ 1
- 1
proposal/myrmidon/src/xdocs/configuring.xml View File

@@ -2,7 +2,7 @@
<document>

<properties>
<title>On Task Configuring in Ant2</title>
<title>On Task Configuring in Ant 2</title>
<author email="peter@apache.org">Peter Donald</author>
</properties>



+ 1
- 1
proposal/myrmidon/src/xdocs/differences.xml View File

@@ -1,7 +1,7 @@
<document>
<properties>
<author email="adammurdoch@apache.org">Adam Murdoch</author>
<title>Differences to Ant1</title>
<title>Differences to Ant 1</title>
</properties>

<body>


+ 5
- 4
proposal/myrmidon/src/xdocs/getinvolved.xml View File

@@ -8,10 +8,11 @@
<body>
<section name="Get Involved">

<p>There are plenty of things you can do to help out with Myrmidon. The Todo
list below describes items which still need to be done. Of course, since
this is an open-source project, there's plenty of scope for experimentation,
and you can pretty much make up your own items to work on.</p>
<p>There are plenty of things you can do to help out with Myrmidon. The
<a href="todo.html">Todo list </a> describes items which still need to
be done. Of course, since this is an open-source project, there's
plenty of scope for experimentation, and you can pretty much make up
your own items to work on.</p>

<p>Some things that are worth reading if you do want to get involved:</p>
<ul>


+ 4
- 4
proposal/myrmidon/src/xdocs/index.xml View File

@@ -28,8 +28,8 @@

<section name="What is Myrmidon?">

<p>Myrmidon is a proposal for Ant 2. Ant2 is the next evolution of the
Ant build tool aimed at removing many of the limitations of the Ant1.x
<p>Myrmidon is a proposal for Ant 2. Ant 2 is the next evolution of the
Ant build tool aimed at removing many of the limitations of the Ant 1.x
product. In particular it aims to;</p>

<ul>
@@ -40,7 +40,7 @@
<li>Simplify development of tasks by task-writers.</li>
<li>Enable ad-hoc &quot;tasks&quot; to be written inside build file,
probably using well known scripting languages such as python and
javascript. (Possible in ant1.x but prohibitively difficult).</li>
javascript. (Possible in Ant 1.x but prohibitively difficult).</li>
<li>Integrate templating technologies such as XSLT, velocity etc
to enable development of reusable build file elements.</li>
</ul>
@@ -55,7 +55,7 @@
is an example of such a tool, which could be assembled using the Myrmidon
task container, and a library of build related tasks. In the future expect
to see Testing frameworks, Job Schedulers (ie Cron managers), shells
and install tools based on the myrmidon base.</p>
and install tools based on the Myrmidon base.</p>

</section>



+ 7
- 7
proposal/myrmidon/src/xdocs/librarys.xml View File

@@ -2,7 +2,7 @@
<document>

<properties>
<title>On Librarys in Ant2</title>
<title>On Libraries in Ant 2</title>
<author email="peter@apache.org">Peter Donald</author>
</properties>

@@ -10,13 +10,13 @@

<section name="Library Management">

<p>Long ago there was identified the need for librarys that contain
<p>Long ago there was identified the need for libraries that contain
tasks and other elements present in the build file. This document
attempts to describe the mechanism via which these libraries will be
defined and used in Ant2. The librarys (also referred to as
defined and used in Ant 2. The libraries (also referred to as
deployments) will be termed antlibs.</p>

<p>Ant librarys can be packaged and signed into a ANt Type Library
<p>Ant libraries can be packaged and signed into a ANt Type Library
format (.atl) using the standard Java Archive tools. (For details on
the .jar file format see the

@@ -33,7 +33,7 @@
be referenced in the build file (an example being DTDs).
</p>

<p>The library may also need access to other librarys or resources
<p>The library may also need access to other libraries or resources
to perform its job. For instance, if the task loaded an XML document
and then processed said document using the
<em>Trax API</em> then
@@ -79,7 +79,7 @@
ant library thus needs a mechanism via which to declare dependencies on
external libraries.</p>

<p>Ant2 uses the "Optional Package" mechanism. Prior to JDK1.3, an "Optional
<p>Ant 2 uses the "Optional Package" mechanism. Prior to JDK1.3, an "Optional
Package" was known as an
<em>Extension</em>. The specification for this
mechanism is available in the JDK1.3 documentation in the directory
@@ -139,7 +139,7 @@ trax-Implementation-Version: 2.1.0
trax-Implementation-Vendor: Apache Software Foundation
</source>

<p>To make other jars available to Ant librarys as "Optional Packages"
<p>To make other jars available to Ant libraries as "Optional Packages"
or Extensions then you need to add a few lines to the manifest of the
other jar. The minimal manifest is the following;</p>



+ 12
- 2
proposal/myrmidon/src/xdocs/stylesheets/docs.vsl View File

@@ -23,7 +23,12 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="$subbannerbg">
<font color="$subbannerfg" face="arial,helvetica,sanserif">
<a name="$subsection.getAttributeValue("name")"><strong>$subsection.getAttributeValue("name")</strong></a>
#if ( $subsection.getAttributeValue("anchor") )
#set ($anchor = $subsection.getAttributeValue("anchor"))
#else
#set ($anchor = $subsection.getAttributeValue("name"))
#end
<a name="$anchor"><strong>$subsection.getAttributeValue("name")</strong></a>
</font>
</td></tr>
<tr><td>
@@ -48,7 +53,12 @@
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="$bannerbg">
<font color="$bannerfg" face="arial,helvetica,sanserif">
<a name="$section.getAttributeValue("name")"><strong>$section.getAttributeValue("name")</strong></a>
#if ( $section.getAttributeValue("anchor") )
#set ($anchor = $section.getAttributeValue("anchor"))
#else
#set ($anchor = $section.getAttributeValue("name"))
#end
<a name="$anchor"><strong>$section.getAttributeValue("name")</strong></a>
</font>
</td></tr>
<tr><td>


+ 3
- 3
proposal/myrmidon/src/xdocs/stylesheets/project.xml View File

@@ -11,10 +11,10 @@
</menu>

<menu name="User Guide">
<item name="Build file" href="/buildfile.html"/>
<item name="Project File" href="/buildfile.html"/>
<item name="Virtual File System" href="/vfs.html"/>
<item name="Ant1 Compatibility Layer" href="/ant1compat.html"/>
<item name="Differences to Ant1" href="/differences.html"/>
<item name="Ant 1 Compatibility Layer" href="/ant1compat.html"/>
<item name="Differences to Ant 1" href="/differences.html"/>
<item name="My First Task" href="/task.html"/>
</menu>



+ 1
- 1
proposal/myrmidon/src/xdocs/task.xml View File

@@ -9,7 +9,7 @@

<section name="My First Task">

<p>In ant1 it was very easy to write your own task. In Ant2 we plan
<p>In Ant 1 it was very easy to write your own task. In Ant 2 we plan
to make it even easier. To write a basic task simply follow the following
formula.</p>



+ 11
- 11
proposal/myrmidon/src/xdocs/todo.xml View File

@@ -22,7 +22,7 @@

<subsection name="Integrate XDocs proposal">
<p>Integrate with the XDocs proposal that generates XML documentation for
tasks. Rework that proposal so that it knows about the myrmidon specific
tasks. Rework that proposal so that it knows about the Myrmidon specific
patterns and features. Also rework it so that it can support reading
documentation and examples from side-by-side the task.</p>
</subsection>
@@ -211,7 +211,7 @@ File[] files = cm.getOutOfDate();

<subsection name="Mail tasks">

<p>Convert the ant1.x Mail tasks to myrmidon.</p>
<p>Convert the Ant 1.x Mail tasks to Myrmidon.</p>

</subsection>

@@ -281,25 +281,25 @@ public class MyrmidonSecurityManager
</subsection>

<subsection name="Ant 1.x Compatibility">
<p>The Ant1 Compatibility layer is still in early stages of development.
<p>The Ant 1 Compatibility layer is still in early stages of development.
</p>
<ul>
<li>Get a version of <code>&lt;antcall&gt;</code> working.</li>
<li>
Provide hooks between Ant1 references and Myrmidon properties.
May use converters for adapting Ant2 objects (like Ant2
Provide hooks between Ant 1 references and Myrmidon properties.
May use converters for adapting Ant 2 objects (like Ant 2
<code>&lt;path&gt;</code> or <code>&lt;fileset&gt;</code>)
as Ant1 types.
as Ant 1 types.
</li>
<li>
Missing tests:
<ul>
<li>Make sure properties are shared between Ant1 and Myrmidon tasks.</li>
<li>Make sure properties are shared between Ant 1 and Myrmidon tasks.</li>
</ul>
</li>
<li>Get GUMP runs going using Myrmidon.</li>
<li>Add protected accessors for get/set/list properties in
Ant1 Project, to minimise the amount of code duplication in
Ant 1 Project, to minimise the amount of code duplication in
Ant1CompatProject.</li>
</ul>
</subsection>
@@ -524,9 +524,6 @@ public class MyrmidonSecurityManager
<code>&lt;socket&gt;</code>
conditions to an antlib. Need to resolve how these will be passed a logger.
</li>
<li>Allow the
<code>&lt;if&gt;</code> task to take any condition implementation.
</li>
<li>Add an else block to the
<code>&lt;if&gt;</code> task.
</li>
@@ -551,6 +548,9 @@ public class MyrmidonSecurityManager
<li>Split the <code>&lt;uptodate&gt;</code> condition into
a condition that checks against a single target file,
and one which checks using a destdir/mapper.</li>
<li>Add condition implementations to: check JVM version,
check Ant version, check whether a particular antlib or extension is
available, match a string against a regular expression.</li>
<li>Add a task to unset a property.</li>
<li>Change the various def and import task to allow a classpath
to be provided.</li>


+ 5
- 5
proposal/myrmidon/src/xdocs/user.xml View File

@@ -11,7 +11,7 @@

<p>
First, you will need to fetch the Myrmidon source from CVS. The source
can be source in the <code>proposal/myrmidon</code> directory of the
can be found in the <code>proposal/myrmidon</code> directory of the
Ant source tree. You should check out the <code>jakarta-ant</code> CVS
module, as described
<a href="http://jakarta.apache.org/site/cvsindex.html">here</a>.
@@ -97,10 +97,10 @@ prompt> <i>java</i> -jar <i>ant-home</i>/bin/myrmidon-launcher.jar <i>options</i

<p>When started, Myrmidon looks for a project file called <code>build.ant</code>
in the current directory. A different project file can be specified using the
<code>-f</code> command-line option. Myrmidon executes the targets given on
the command-line, or the default target if none is given. For example, the
following executes the targets <code>clean</code> and <code>build</code> from
the project file <code>my-project.xml</code>:</p>
<code>-f</code> command-line option. Myrmidon executes the targets that are
listed on the command-line, or the default target if none is given. For
example, the following command executes targets <code>clean</code> and
<code>build</code> from project file <code>my-project.xml</code>:</p>

<pre>
prompt> ant -f my-project.xml clean build


Loading…
Cancel
Save