You are viewing a plain text version of this content. The canonical link for it is here.
Posted to alexandria-dev@jakarta.apache.org by Costin Manolache <cm...@yahoo.com> on 2002/11/21 21:17:50 UTC
[PATCH] few improvements ( repost )
I'm sending the patch again ( trying to get in sync ).
Please let me know if there's any problem with it.
Changes:
- indentation
- "priority" attribute to bubble projects to the top
- read a customization script
- pass custom options to java
- echo the command and classpath before executing
Costin
Index: java/Jenny.java
===================================================================
RCS file: /home/cvs/jakarta-alexandria/proposal/gump/java/Jenny.java,v
retrieving revision 1.19
diff -u -r1.19 Jenny.java
--- java/Jenny.java 27 Aug 2002 14:54:09 -0000 1.19
+++ java/Jenny.java 21 Nov 2002 20:12:05 -0000
@@ -62,7 +62,7 @@
// TRaX classes
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
-import javax.xml.transform.TransformerFactory;
+import javax.xml.transform.*;
// Java API for XML Parsing classes
import javax.xml.parsers.DocumentBuilder;
@@ -328,7 +328,9 @@
private void output(Node dom, String dest) throws Exception {
DOMSource in = new DOMSource(dom);
StreamResult out = new StreamResult(dest);
- tFactory.newTransformer().transform(in, out);
+ Transformer t=tFactory.newTransformer();
+ t.setOutputProperty( OutputKeys.INDENT, "yes" );
+ t.transform(in, out);
}
/**
Index: java/Project.java
===================================================================
RCS file: /home/cvs/jakarta-alexandria/proposal/gump/java/Project.java,v
retrieving revision 1.44
diff -u -r1.44 Project.java
--- java/Project.java 27 Aug 2002 14:54:09 -0000 1.44
+++ java/Project.java 21 Nov 2002 20:12:05 -0000
@@ -497,8 +497,10 @@
}
/**
- * Implement a deterministing sort order. Projects which are most
- * referenced get priority. After that, order is determined
alphabetically.
+ * Implement a deterministing sort order. Projects with high
'priority' attribute
+ * are first. Then projects which are most referenced get priority.
+ * After that, order is determined alphabetically.
+ *
*/
private static class Ranker implements Comparator {
public int compare(Object o1, Object o2) {
@@ -508,6 +510,16 @@
if (p1 == null) return -1;
if (p2 == null) return 1;
+ String p1Priority=p1.get("priority");
+ if( "".equals( p1Priority )) p1Priority=null;
+ String p2Priority=p2.get("priority");
+ if( "".equals( p2Priority )) p2Priority=null;
+ if( p1Priority!=null || p2Priority!=null ) {
+ if( p1Priority==null ) return 1;
+ if( p2Priority==null ) return -1;
+ return (p1Priority).compareTo( p2Priority);
+ }
+
int diff = p2.referencedBy.size() - p1.referencedBy.size();
if (diff != 0) return diff;
Index: stylesheet/bash.xsl
===================================================================
RCS file: /home/cvs/jakarta-alexandria/proposal/gump/stylesheet/bash.xsl,v
retrieving revision 1.81
diff -u -r1.81 bash.xsl
--- stylesheet/bash.xsl 24 Jul 2002 11:34:37 -0000 1.81
+++ stylesheet/bash.xsl 21 Nov 2002 20:12:06 -0000
@@ -58,6 +58,7 @@
<xsl:template match="build">
<xsl:text>#!/bin/bash </xsl:text>
+ <xsl:text>if [ -f gump_local.sh ] ; then source gump_local.sh ; fi
</xsl:text>
<xsl:text>export SCORECARD_FILE="</xsl:text><xsl:value-of
select="scorecard/@file"/><xsl:text>" </xsl:text>
<xsl:text>export SCORECARD=">>$SCORECARD_FILE" </xsl:text>
<xsl:text>rm -f $SCORECARD_FILE </xsl:text>
@@ -423,13 +424,69 @@
<xsl:text>`cygpath --path --windows "$CLASSPATH"` </xsl:text>
</xsl:if>
+ <!-- Display the executed command and params -->
+ <xsl:text>eval "pwd $OUT 2>&1" </xsl:text>
+ <xsl:text>eval "echo CLASSPATH=$CLASSPATH </dev/null $OUT
2>&1" </xsl:text>
+
+ <xsl:text>eval "echo </xsl:text>
+ <xsl:text>java </xsl:text>
+
+ <xsl:if test="bootclass">
+ <xsl:text> -Xbootclasspath/p:</xsl:text>
+ <xsl:for-each select="bootclass">
+ <xsl:if test="position()!=1">
+ <xsl:text>:</xsl:text>
+ </xsl:if>
+ <xsl:value-of select="translate(@location,'\','/')"/>
+ </xsl:for-each>
+ </xsl:if>
+
+ <xsl:text> $GUMP_JAVA_OPTS</xsl:text>
+
+ <xsl:text> </xsl:text><xsl:value-of select="$ant-cmd"/>
+
+ <xsl:text> $GUMP_ANT_OPTS</xsl:text>
+
+ <xsl:if test="@buildfile">
+ <xsl:text> -f </xsl:text>
+ <xsl:value-of select="translate(@buildfile,'\','/')"/>
+ </xsl:if>
+
+ <xsl:for-each select="property">
+ <xsl:text> -D</xsl:text>
+ <xsl:value-of select="@name"/>
+ <xsl:text>=</xsl:text>
+ <xsl:choose>
+ <xsl:when test="@type = 'path' and $cygwin = 1">
+ <xsl:text>'`cygpath --path --windows "</xsl:text>
+ <xsl:value-of select="@value"/>
+ <xsl:text>"`'</xsl:text>
+ </xsl:when>
+ <xsl:otherwise><xsl:value-of select="@value"/></xsl:otherwise>
+ </xsl:choose>
+ </xsl:for-each>
+
+ <xsl:choose>
+ <xsl:when test="count(../ant)=1">
+ <xsl:text> $TARGET</xsl:text>
+ </xsl:when>
+ <xsl:when test="@target">
+ <xsl:text> </xsl:text>
+ <xsl:value-of select="@target"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:text> </dev/null $OUT 2>&1" </xsl:text>
+
+ <!-- Do the real thing -->
+
<xsl:text>eval </xsl:text>
<xsl:if test="$cmd-prefix">
<xsl:text>"</xsl:text>
<xsl:value-of select="$cmd-prefix"/>
<xsl:text>" </xsl:text>
</xsl:if>
- <xsl:text>"java</xsl:text>
+ <xsl:text>"java </xsl:text>
<xsl:if test="bootclass">
<xsl:text> -Xbootclasspath/p:</xsl:text>
@@ -441,7 +498,11 @@
</xsl:for-each>
</xsl:if>
+ <xsl:text> $GUMP_JAVA_OPTS</xsl:text>
+
<xsl:text> </xsl:text><xsl:value-of select="$ant-cmd"/>
+
+ <xsl:text> $GUMP_ANT_OPTS</xsl:text>
<xsl:if test="@buildfile">
<xsl:text> -f </xsl:text>
Index: stylesheet/update.xsl
===================================================================
RCS file: /home/cvs/jakarta-alexandria/proposal/gump/stylesheet/update.xsl,v
retrieving revision 1.18
diff -u -r1.18 update.xsl
--- stylesheet/update.xsl 24 Jul 2002 11:34:37 -0000 1.18
+++ stylesheet/update.xsl 21 Nov 2002 20:12:06 -0000
@@ -1,4 +1,5 @@
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
+ <xsl:output method="XML" indent="yes" />
<xsl:variable name="basedir" select="/workspace/@basedir"/>
<xsl:variable name="logdir" select="/workspace/@logdir"/>
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>