summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--qpid/gentools/src/org/apache/qpid/gentools/Main.java32
-rw-r--r--qpid/java/common/pom.xml12
-rw-r--r--qpid/java/common/protocol-version.xml19
3 files changed, 41 insertions, 22 deletions
diff --git a/qpid/gentools/src/org/apache/qpid/gentools/Main.java b/qpid/gentools/src/org/apache/qpid/gentools/Main.java
index 189d3eb5ae..7e6248817c 100644
--- a/qpid/gentools/src/org/apache/qpid/gentools/Main.java
+++ b/qpid/gentools/src/org/apache/qpid/gentools/Main.java
@@ -261,19 +261,30 @@ public class Main
public static void main(String[] args)
{
+ int exitCode = 1;
// TODO: This is a simple and klunky way of hangling command-line args, and could be improved upon.
if (args.length < 2)
+ {
usage();
- try { new Main().run(args); }
- catch (IOException e) { e.printStackTrace(); }
- catch (ParserConfigurationException e) { e.printStackTrace(); }
- catch (SAXException e) { e.printStackTrace(); }
- catch (AmqpParseException e) { e.printStackTrace(); }
- catch (AmqpTypeMappingException e) { e.printStackTrace(); }
- catch (AmqpTemplateException e) { e.printStackTrace(); }
- catch (TargetDirectoryException e) { e.printStackTrace(); }
- catch (IllegalAccessException e) { e.printStackTrace(); }
- catch (InvocationTargetException e) { e.printStackTrace(); }
+ }
+ else
+ {
+ try
+ {
+ new Main().run(args);
+ exitCode = 0;
+ }
+ catch (IOException e) { e.printStackTrace(); }
+ catch (ParserConfigurationException e) { e.printStackTrace(); }
+ catch (SAXException e) { e.printStackTrace(); }
+ catch (AmqpParseException e) { e.printStackTrace(); }
+ catch (AmqpTypeMappingException e) { e.printStackTrace(); }
+ catch (AmqpTemplateException e) { e.printStackTrace(); }
+ catch (TargetDirectoryException e) { e.printStackTrace(); }
+ catch (IllegalAccessException e) { e.printStackTrace(); }
+ catch (InvocationTargetException e) { e.printStackTrace(); }
+ }
+ System.exit(exitCode);
}
public static void usage()
@@ -287,7 +298,6 @@ public class Main
System.out.println(" Defaults: \"" + defaultCppTemplateDir + "\" for C++;");
System.out.println(" \"" + defaultJavaTemplateDir + "\" for java.");
System.out.println(" XMLfile is a space-separated list of AMQP XML files to be parsed.");
- System.exit(0);
}
public static String ListTemplateList(File[] list)
diff --git a/qpid/java/common/pom.xml b/qpid/java/common/pom.xml
index 77f8cc9dff..dc0db7f954 100644
--- a/qpid/java/common/pom.xml
+++ b/qpid/java/common/pom.xml
@@ -36,12 +36,11 @@
<properties>
<topDirectoryLocation>..</topDirectoryLocation>
<gentools.home>${topDirectoryLocation}/../gentools</gentools.home>
- <generated.path>${project.build.directory}/generated-sources/xsl</generated.path>
+ <generated.path>${project.build.directory}/generated-sources/gentools</generated.path>
<generated.package>org/apache/qpid/framing</generated.package>
<generated.dir>${generated.path}/${generated.package}</generated.dir>
<generated.timestamp>${generated.dir}/timestamp</generated.timestamp>
<specs.dir>${topDirectoryLocation}/../specs</specs.dir>
- <cluster.asl>${basedir}/src/main/xsl/cluster.asl</cluster.asl>
</properties>
<build>
@@ -55,14 +54,7 @@
<phase>generate-sources</phase>
<configuration>
<tasks>
- <ant antfile="protocol-version.xml">
- <property name="gentools.home" value="${gentools.home}"/>
- <property name="generated.dir" value="${generated.dir}"/>
- <property name="generated.timestamp" value="${generated.timestamp}"/>
- <property name="xml.spec.dir" value="${specs.dir}"/>
- <property name="xml.spec.deps" value="amqp.0-8.xml cluster.0-8.xml"/>
- <property name="xml.spec.list" value="${specs.dir}/amqp.0-8.xml ${specs.dir}/cluster.0-8.xml"/>
- </ant>
+ <ant antfile="protocol-version.xml" />
</tasks>
<sourceRoot>${generated.path}</sourceRoot>
</configuration>
diff --git a/qpid/java/common/protocol-version.xml b/qpid/java/common/protocol-version.xml
index d318f07901..40331a8a84 100644
--- a/qpid/java/common/protocol-version.xml
+++ b/qpid/java/common/protocol-version.xml
@@ -19,11 +19,24 @@
-
-->
<project name="Qpid Common Protocol Versions" default="generate">
+ <property name="topDirectoryLocation" location=".." />
+ <property name="project.build.directory" location="target" />
+ <property name="gentools.home" location="${topDirectoryLocation}/../gentools" />
+ <property name="generated.path" location="${project.build.directory}/generated-sources/gentools" />
+ <property name="generated.package" value="org/apache/qpid/framing" />
+ <property name="generated.dir" location="${generated.path}/${generated.package}" />
+ <property name="generated.timestamp" location="${generated.dir}/timestamp" />
+ <property name="xml.spec.dir" location="${topDirectoryLocation}/../specs" />
+ <property name="xml.spec.deps" value="amqp.0-8.xml cluster.0-8.xml" />
+ <property name="xml.spec.list" value="${xml.spec.dir}/amqp.0-8.xml ${xml.spec.dir}/cluster.0-8.xml" />
<target name="generate" depends="compile_generator,check_generate_deps" unless="generation.notRequired">
<mkdir dir="${generated.dir}"/>
- <java classname="org.apache.qpid.gentools.Main" fork="true" dir="${gentools.home}/src">
+ <java classname="org.apache.qpid.gentools.Main" fork="true" dir="${gentools.home}/src" failonerror="true">
<arg line="-j -o ${generated.dir} -t ${gentools.home}/templ.java ${xml.spec.list}" />
+ <classpath>
+ <pathelement path="${gentools.home}/src" />
+ </classpath>
</java>
<touch file="${generated.timestamp}" />
</target>
@@ -39,5 +52,9 @@
</target>
<target name="precompile" depends="generate"/>
+
+ <target name="clean">
+ <delete dir="${generated.path}" />
+ </target>
</project>