Browse Source

First pass at an XDoclet proof-of-concept

Use the xdoclet target, and check the build directory for a generated core-ant-descriptor.xml


git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@270717 13f79535-47bb-0310-9956-ffa450edef68
master
Erik Hatcher 23 years ago
parent
commit
7eea15fc17
18 changed files with 63 additions and 0 deletions
  1. +22
    -0
      proposal/myrmidon/build.xml
  2. BIN
      proposal/myrmidon/lib/log4j-core.jar
  3. +1
    -0
      proposal/myrmidon/src/java/org/apache/antlib/core/Fail.java
  4. +1
    -0
      proposal/myrmidon/src/java/org/apache/antlib/core/LoadProperties.java
  5. +1
    -0
      proposal/myrmidon/src/java/org/apache/antlib/core/Log.java
  6. +1
    -0
      proposal/myrmidon/src/java/org/apache/antlib/core/Property.java
  7. +1
    -0
      proposal/myrmidon/src/java/org/apache/antlib/core/StringToBooleanConverter.java
  8. +1
    -0
      proposal/myrmidon/src/java/org/apache/antlib/core/StringToByteConverter.java
  9. +1
    -0
      proposal/myrmidon/src/java/org/apache/antlib/core/StringToClassConverter.java
  10. +1
    -0
      proposal/myrmidon/src/java/org/apache/antlib/core/StringToDoubleConverter.java
  11. +1
    -0
      proposal/myrmidon/src/java/org/apache/antlib/core/StringToEnumConverter.java
  12. +1
    -0
      proposal/myrmidon/src/java/org/apache/antlib/core/StringToFileConverter.java
  13. +1
    -0
      proposal/myrmidon/src/java/org/apache/antlib/core/StringToFloatConverter.java
  14. +1
    -0
      proposal/myrmidon/src/java/org/apache/antlib/core/StringToIntegerConverter.java
  15. +1
    -0
      proposal/myrmidon/src/java/org/apache/antlib/core/StringToLongConverter.java
  16. +1
    -0
      proposal/myrmidon/src/java/org/apache/antlib/core/StringToShortConverter.java
  17. +1
    -0
      proposal/myrmidon/src/java/org/apache/antlib/core/StringToURLConverter.java
  18. +26
    -0
      proposal/myrmidon/src/manifest/core-ant-descriptor.template

+ 22
- 0
proposal/myrmidon/build.xml View File

@@ -456,4 +456,26 @@ Legal:
<antcall target="main"/>
</target>

<target name="xdoclet">
<path id="xdoclet.classpath">
<pathelement location="lib/xdoclet.jar"/>
<pathelement location="lib/log4j-core.jar"/>
<!-- javadoc is needed -->
<pathelement path="${java.class.path}"/>
<pathelement location="${build.classes}"/>
</path>
<taskdef name="xdoclet"
classname="xdoclet.DocletTask"
classpath="lib/xdoclet.jar"/>
<xdoclet sourcepath="${java.dir}"
destdir="${build.dir}"
classpathref="xdoclet.classpath">
<fileset dir="${java.dir}">
<include name="**/*.java" />
</fileset>
<template templateFile="${manifest.dir}/core-ant-descriptor.template"
destinationfile="core-ant-descriptor.xml"/>
</xdoclet>
</target>
</project>

BIN
proposal/myrmidon/lib/log4j-core.jar View File


+ 1
- 0
proposal/myrmidon/src/java/org/apache/antlib/core/Fail.java View File

@@ -17,6 +17,7 @@ import org.apache.myrmidon.framework.Condition;
* Useful for forcing a build to fail on a certain condition.
*
* @author <a href="mailto:peter@apache.org">Peter Donald</a>
* @ant:task name="fail"
*/
public class Fail
extends AbstractTask


+ 1
- 0
proposal/myrmidon/src/java/org/apache/antlib/core/LoadProperties.java View File

@@ -21,6 +21,7 @@ import org.apache.myrmidon.framework.AbstractContainerTask;
* This task loads properties from a property file and places them in the context.
*
* @author <a href="mailto:peter@apache.org">Peter Donald</a>
* @ant:task name="load-properties"
*/
public class LoadProperties
extends AbstractContainerTask


+ 1
- 0
proposal/myrmidon/src/java/org/apache/antlib/core/Log.java View File

@@ -14,6 +14,7 @@ import org.apache.myrmidon.api.TaskException;
* This is a task used to log messages in the build file.
*
* @author <a href="mailto:peter@apache.org">Peter Donald</a>
* @ant:task name="log"
*/
public class Log
extends AbstractTask


+ 1
- 0
proposal/myrmidon/src/java/org/apache/antlib/core/Property.java View File

@@ -28,6 +28,7 @@ import org.apache.myrmidon.interfaces.type.TypeManager;
* TODO: Determine final format of property task.
*
* @author <a href="mailto:peter@apache.org">Peter Donald</a>
* @ant:task name="property"
*/
public class Property
extends AbstractContainerTask


+ 1
- 0
proposal/myrmidon/src/java/org/apache/antlib/core/StringToBooleanConverter.java View File

@@ -17,6 +17,7 @@ import org.apache.myrmidon.converter.ConverterException;
* String to boolean converter
*
* @author <a href="mailto:peter@apache.org">Peter Donald</a>
* @ant:converter source="java.lang.String" destination="java.lang.Boolean"
*/
public class StringToBooleanConverter
extends AbstractConverter


+ 1
- 0
proposal/myrmidon/src/java/org/apache/antlib/core/StringToByteConverter.java View File

@@ -17,6 +17,7 @@ import org.apache.myrmidon.converter.ConverterException;
* String to byte converter
*
* @author <a href="mailto:peter@apache.org">Peter Donald</a>
* @ant:converter source="java.lang.String" destination="java.lang.Byte"
*/
public class StringToByteConverter
extends AbstractConverter


+ 1
- 0
proposal/myrmidon/src/java/org/apache/antlib/core/StringToClassConverter.java View File

@@ -17,6 +17,7 @@ import org.apache.myrmidon.converter.ConverterException;
* String to class converter
*
* @author <a href="mailto:peter@apache.org">Peter Donald</a>
* @ant:converter source="java.lang.String" destination="java.lang.Class"
*/
public class StringToClassConverter
extends AbstractConverter


+ 1
- 0
proposal/myrmidon/src/java/org/apache/antlib/core/StringToDoubleConverter.java View File

@@ -17,6 +17,7 @@ import org.apache.myrmidon.converter.ConverterException;
* String to double converter
*
* @author <a href="mailto:peter@apache.org">Peter Donald</a>
* @ant:converter source="java.lang.String" destination="java.lang.Double"
*/
public class StringToDoubleConverter
extends AbstractConverter


+ 1
- 0
proposal/myrmidon/src/java/org/apache/antlib/core/StringToEnumConverter.java View File

@@ -20,6 +20,7 @@ import org.apache.myrmidon.converter.ConverterException;
* String to Enum converter
*
* @author <a href="mailto:peter@apache.org">Peter Donald</a>
* @ant:converter source="java.lang.String" destination="org.apache.avalon.framework.Enum"
*/
public class StringToEnumConverter
implements Converter


+ 1
- 0
proposal/myrmidon/src/java/org/apache/antlib/core/StringToFileConverter.java View File

@@ -20,6 +20,7 @@ import org.apache.myrmidon.converter.ConverterException;
* String to file converter
*
* @author <a href="mailto:peter@apache.org">Peter Donald</a>
* @ant:converter source="java.lang.String" destination="java.io.File"
*/
public class StringToFileConverter
extends AbstractConverter


+ 1
- 0
proposal/myrmidon/src/java/org/apache/antlib/core/StringToFloatConverter.java View File

@@ -17,6 +17,7 @@ import org.apache.myrmidon.converter.ConverterException;
* String to float converter
*
* @author <a href="mailto:peter@apache.org">Peter Donald</a>
* @ant:converter source="java.lang.String" destination="java.lang.Float"
*/
public class StringToFloatConverter
extends AbstractConverter


+ 1
- 0
proposal/myrmidon/src/java/org/apache/antlib/core/StringToIntegerConverter.java View File

@@ -17,6 +17,7 @@ import org.apache.myrmidon.converter.ConverterException;
* String to integer converter.
*
* @author <a href="mailto:peter@apache.org">Peter Donald</a>
* @ant:converter source="java.lang.String" destination="java.lang.Integer"
*/
public class StringToIntegerConverter
extends AbstractConverter


+ 1
- 0
proposal/myrmidon/src/java/org/apache/antlib/core/StringToLongConverter.java View File

@@ -17,6 +17,7 @@ import org.apache.myrmidon.converter.ConverterException;
* String to long converter
*
* @author <a href="mailto:peter@apache.org">Peter Donald</a>
* @ant:converter source="java.lang.String" destination="java.lang.Long"
*/
public class StringToLongConverter
extends AbstractConverter


+ 1
- 0
proposal/myrmidon/src/java/org/apache/antlib/core/StringToShortConverter.java View File

@@ -17,6 +17,7 @@ import org.apache.myrmidon.converter.ConverterException;
* String to short converter
*
* @author <a href="mailto:peter@apache.org">Peter Donald</a>
* @ant:converter source="java.lang.String" destination="java.lang.Short"
*/
public class StringToShortConverter
extends AbstractConverter


+ 1
- 0
proposal/myrmidon/src/java/org/apache/antlib/core/StringToURLConverter.java View File

@@ -19,6 +19,7 @@ import org.apache.myrmidon.converter.ConverterException;
* String to url converter
*
* @author <a href="mailto:peter@apache.org">Peter Donald</a>
* @ant:converter source="java.lang.String" destination="java.net.URL"
*/
public class StringToURLConverter
extends AbstractConverter


+ 26
- 0
proposal/myrmidon/src/manifest/core-ant-descriptor.template View File

@@ -0,0 +1,26 @@
<ant-lib>

<types>

<XDtClass:forAllClasses type="org.apache.myrmidon.api.AbstractTask" extent="hierarchy">
<XDtClass:ifHasClassTag tagName="ant:task">
<task name="<XDtClass:classTagValue tagName="ant:task" paramName="name"/>"
classname="<XDtClass:fullClassName/>"/>
</XDtClass:ifHasClassTag>
</XDtClass:forAllClasses>

</types>

<converters>

<XDtClass:forAllClasses type="org.apache.myrmidon.converter.AbstractConverter">
<XDtClass:ifHasClassTag tagName="ant:converter">
<converter classname="<XDtClass:fullClassName/>"
source="<XDtClass:classTagValue tagName="ant:converter" paramName="source"/>"
destination="<XDtClass:classTagValue tagName="ant:converter" paramName="destination"/>"/>
</XDtClass:ifHasClassTag>
</XDtClass:forAllClasses>

</converters>

</ant-lib>

Loading…
Cancel
Save