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 ru...@apache.org on 2001/08/12 20:11:22 UTC
cvs commit: jakarta-alexandria/proposal/gump/stylesheet build.xsl defaults.xsl
rubys 01/08/12 11:11:22
Modified: proposal/gump gen.java
proposal/gump/project jakarta-turbine-fulcrum.xml
jakarta-turbine-torque.xml
proposal/gump/stylesheet build.xsl defaults.xsl
Log:
Add the various dependencies needed by fulcrum to the build. Sreamline
the process by allowing depend elements to be placed directly into the
ant element, implying both a property and a dependency. Utilize this
new function torque.
Note: fulcrum still does not compile, but the compilation errors look
like they are not due to missing dependencies.
Revision Changes Path
1.5 +41 -6 jakarta-alexandria/proposal/gump/gen.java
Index: gen.java
===================================================================
RCS file: /home/cvs/jakarta-alexandria/proposal/gump/gen.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- gen.java 2001/08/05 16:50:34 1.4
+++ gen.java 2001/08/12 18:11:22 1.5
@@ -1,4 +1,4 @@
-// Imported TraX classes
+// TRaX classes
import javax.xml.transform.dom.DOMResult;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.OutputKeys;
@@ -6,24 +6,27 @@
import javax.xml.transform.stream.StreamSource;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.stream.StreamSource;
-// Imported JAVA API for XML Parsing classes
+// Java API for XML Parsing classes
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
-// Imported DOM classes
+// DOM classes
import org.w3c.dom.Attr;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
-import org.w3c.dom.Node;
import org.w3c.dom.NamedNodeMap;
+import org.w3c.dom.Node;
+import org.w3c.dom.traversal.NodeIterator;
-// Imported java classes
+// Java classes
import java.io.FileOutputStream;
import java.util.Enumeration;
import java.util.Hashtable;
+// Apache xpath
+import org.apache.xpath.XPathAPI;
+
public class gen {
DocumentBuilderFactory dFactory = DocumentBuilderFactory.newInstance();
@@ -183,6 +186,37 @@
}
/**
+ * Replace ant "depend" elements with "property" elements. This is
+ * a convenience "syntatic sugar" that makes for simpler project
+ * definitions. Attribute "property" becomes name. Attributes
+ * reference="jarpath" and classpath="true" are added.
+ * @param document to be transformed
+ */
+ private void antDependsToProperties(Document document) throws Exception {
+ NodeIterator nl = XPathAPI.selectNodeIterator(document, "//ant/depend");
+ for (Node depend=nl.nextNode(); depend!=null; depend=nl.nextNode()) {
+
+ // create a new element based on existing element
+ Element property = document.createElement("property");
+ property.setAttribute("reference", "jarpath");
+ property.setAttribute("classpath", "add");
+ copyChildren((Element)depend, property);
+
+ // change property attribute to name attribute
+ if (property.getAttributeNode("name")==null) {
+ Attr pname = property.getAttributeNode("property");
+ if (pname != null) {
+ property.setAttribute("name",pname.getValue());
+ property.removeAttributeNode(pname);
+ }
+ }
+
+ // replace existing element with new one
+ depend.getParentNode().replaceChild(property, depend);
+ }
+ }
+
+ /**
* merge, sort, and insert defaults into a workspace
* @param DOM to be transformed
* @param sheet to be used
@@ -193,6 +227,7 @@
expand((Element)workspace.getFirstChild());
flatten("project", workspace.getFirstChild());
flatten("repository", workspace.getFirstChild());
+ antDependsToProperties((Document)workspace);
Node resolved = transform(workspace, "defaults.xsl");
output (resolved, "work/merge.xml");
1.4 +16 -14 jakarta-alexandria/proposal/gump/project/jakarta-turbine-fulcrum.xml
Index: jakarta-turbine-fulcrum.xml
===================================================================
RCS file: /home/cvs/jakarta-alexandria/proposal/gump/project/jakarta-turbine-fulcrum.xml,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- jakarta-turbine-fulcrum.xml 2001/08/11 21:19:47 1.3
+++ jakarta-turbine-fulcrum.xml 2001/08/12 18:11:22 1.4
@@ -8,26 +8,28 @@
<cvs repository="jakarta"/>
<ant>
- <property name="velocity.jar"
- reference="jarpath" id="velocity" project="jakarta-velocity"/>
- <property name="log4j.jar"
- reference="jarpath" id="log4j" project="jakarta-log4j"/>
- <property name="jdom.jar"
- reference="jarpath" id="jdom" project="jdom"/>
- <property name="jakarta-site2"
- reference="home" project="jakarta-site2"/>
- <property name="torque.jar" id="torque"
- reference="jarpath" project="jakarta-turbine-torque"/>
+ <depend property="velocity.jar" project="jakarta-velocity"/>
+ <depend property="log4j.jar" project="jakarta-log4j" id="log4j"/>
+ <depend property="torque.jar" project="jakarta-turbine-torque"/>
+ <depend property="jdom.jar" project="jdom"/>
+ <depend property="bsf.jar" project="bsf"/>
+ <depend property="servlet.jar" project="jakarta-servletapi-4"/>
+ <depend property="javamail.jar" project="javamail"/>
+ <depend property="jaf.jar" project="jaf"/>
+ <depend property="xalan.jar" project="xml-xalan2"/>
+ <depend property="xmlrpc.jar" project="xml-rpc"/>
+ <depend property="torque.jar" project="jakarta-turbine-torque"/>
+ <depend property="village.jar" project="village"/>
+ <depend property="commons-util.jar" project="commons-util"/>
+ <property name="jakarta-site2" reference="home" project="jakarta-site2"/>
+
<property name="final.name" value="fulcrum-gump"/>
- <property name="deprecation" path="on"/>
+ <property name="deprecation" value="on"/>
</ant>
<depend project="jakarta-ant"/>
<depend project="xml-xerces"/>
- <depend project="jakarta-velocity"/>
- <depend project="jakarta-log4j"/>
- <depend project="jakarta-turbine-torque"/>
<home nested="bin"/>
<jar name="fulcrum-gump.jar"/>
1.13 +10 -23 jakarta-alexandria/proposal/gump/project/jakarta-turbine-torque.xml
Index: jakarta-turbine-torque.xml
===================================================================
RCS file: /home/cvs/jakarta-alexandria/proposal/gump/project/jakarta-turbine-torque.xml,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- jakarta-turbine-torque.xml 2001/08/12 01:23:26 1.12
+++ jakarta-turbine-torque.xml 2001/08/12 18:11:22 1.13
@@ -8,34 +8,21 @@
<cvs repository="jakarta"/>
<ant>
- <property name="velocity.jar"
- reference="jarpath" id="velocity" project="jakarta-velocity"/>
- <property name="xerces.jar"
- reference="jarpath" id="parser" project="xml-xerces"/>
- <property name="village.jar"
- reference="jarpath" id="village" project="village"/>
- <property name="log4j.jar"
- reference="jarpath" id="log4j" project="jakarta-log4j"/>
- <property name="jdbc.jar"
- reference="jarpath" id="stdext" project="jdbc"/>
- <property name="jdom.jar"
- reference="jarpath" id="jdom" project="jdom"/>
- <property name="jakarta-site2"
- reference="home" project="jakarta-site2"/>
- <property name="commons-util.jar"
- reference="jarpath" id="util" project="commons-util"/>
+ <depend property="velocity.jar" project="jakarta-velocity"/>
+ <depend property="xerces.jar" project="xml-xerces"/>
+ <depend property="village.jar" project="village"/>
+ <depend property="log4j.jar" project="jakarta-log4j" id="log4j"/>
+ <depend property="jdbc.jar" project="jdbc"/>
+ <depend property="jdom.jar" project="jdom"/>
+ <depend property="commons-util.jar" project="commons-util"/>
+ <property name="jakarta-site2" reference="home" project="jakarta-site2"/>
+
<property name="final.name" value="torque-gump"/>
- <property name="deprecation" path="on"/>
+ <property name="deprecation" value="on"/>
</ant>
<depend project="jakarta-ant"/>
- <depend project="xml-xerces"/>
- <depend project="jakarta-velocity"/>
- <depend project="village"/>
- <depend project="jakarta-log4j"/>
- <depend project="commons-util"/>
- <depend project="jdbc"/>
<home nested="bin"/>
<jar id="torque" name="torque-gump.jar"/>
1.15 +22 -8 jakarta-alexandria/proposal/gump/stylesheet/build.xsl
Index: build.xsl
===================================================================
RCS file: /home/cvs/jakarta-alexandria/proposal/gump/stylesheet/build.xsl,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- build.xsl 2001/08/07 13:06:55 1.14
+++ build.xsl 2001/08/12 18:11:22 1.15
@@ -252,18 +252,32 @@
<xsl:when test="@reference='jar'">
<xsl:variable name="project" select="@project"/>
- <xsl:variable name="id" select="@id"/>
- <xsl:for-each select="/workspace/project[@name=$project]">
- <property name="{$name}" value="{jar[@id=$id]/@name}" type="path"/>
- </xsl:for-each>
+ <xsl:if test="@id">
+ <xsl:variable name="id" select="@id"/>
+ <xsl:for-each select="/workspace/project[@name=$project]">
+ <property name="{$name}" value="{jar[@id=$id]/@name}"/>
+ </xsl:for-each>
+ </xsl:if>
+ <xsl:if test="not(@id)">
+ <xsl:for-each select="/workspace/project[@name=$project]/jar">
+ <property name="{$name}" value="{@name}"/>
+ </xsl:for-each>
+ </xsl:if>
</xsl:when>
<xsl:when test="@reference='jarpath'">
<xsl:variable name="project" select="@project"/>
- <xsl:variable name="id" select="@id"/>
- <xsl:for-each select="/workspace/project[@name=$project]">
- <property name="{$name}" value="{home}/{jar[@id=$id]/@name}" type="path"/>
- </xsl:for-each>
+ <xsl:if test="@id">
+ <xsl:variable name="id" select="@id"/>
+ <xsl:for-each select="/workspace/project[@name=$project]">
+ <property name="{$name}" value="{home}/{jar[@id=$id]/@name}" type="path"/>
+ </xsl:for-each>
+ </xsl:if>
+ <xsl:if test="not(@id)">
+ <xsl:for-each select="/workspace/project[@name=$project]/jar">
+ <property name="{$name}" value="{../home}/{@name}" type="path"/>
+ </xsl:for-each>
+ </xsl:if>
</xsl:when>
<xsl:when test="@path">
1.6 +3 -1 jakarta-alexandria/proposal/gump/stylesheet/defaults.xsl
Index: defaults.xsl
===================================================================
RCS file: /home/cvs/jakarta-alexandria/proposal/gump/stylesheet/defaults.xsl,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- defaults.xsl 2001/08/07 14:13:06 1.5
+++ defaults.xsl 2001/08/12 18:11:22 1.6
@@ -163,7 +163,9 @@
<xsl:if test="not(../property[position() < $position and
@project=$dependency])">
<depend project="{$dependency}">
- <noclasspath/>
+ <xsl:if test="not(@classpath)">
+ <noclasspath/>
+ </xsl:if>
</depend>
<xsl:text> </xsl:text>
---------------------------------------------------------------------
To unsubscribe, e-mail: alexandria-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: alexandria-dev-help@jakarta.apache.org
Re: cvs commit: jakarta-alexandria/proposal/gump/stylesheet
build.xsl defaults.xsl
Posted by Jon Stevens <jo...@latchkey.com>.
on 8/12/01 11:11 AM, "rubys@apache.org" <ru...@apache.org> wrote:
> Note: fulcrum still does not compile, but the compilation errors look
> like they are not due to missing dependencies.
>
It compiles for me...
Can you give some more information?
-jon
[161][ ~/checkout/jakarta-turbine-fulcrum ]% cvs up
cvs server: Updating .
P NOTES
cvs server: Updating build
cvs server: Updating lib
cvs server: Updating src
cvs server: Updating src/core
cvs server: Updating src/core/java
cvs server: Updating src/core/java/org
cvs server: Updating src/core/java/org/apache
cvs server: Updating src/core/java/org/apache/fulcrum
cvs server: Updating src/services
cvs server: Updating src/services/java
cvs server: Updating src/services/java/org
cvs server: Updating src/services/java/org/apache
cvs server: Updating src/services/java/org/apache/fulcrum
cvs server: Updating src/services/java/org/apache/fulcrum/bsf
cvs server: Updating src/services/java/org/apache/fulcrum/cache
cvs server: Updating src/services/java/org/apache/fulcrum/db
cvs server: Updating src/services/java/org/apache/fulcrum/factory
cvs server: Updating src/services/java/org/apache/fulcrum/mimetype
cvs server: Updating src/services/java/org/apache/fulcrum/mimetype/util
cvs server: Updating src/services/java/org/apache/fulcrum/naming
cvs server: Updating src/services/java/org/apache/fulcrum/pool
cvs server: Updating src/services/java/org/apache/fulcrum/schedule
cvs server: Updating src/services/java/org/apache/fulcrum/security
P src/services/java/org/apache/fulcrum/security/BaseSecurityService.java
cvs server: Updating src/services/java/org/apache/fulcrum/security/entity
cvs server: Updating src/services/java/org/apache/fulcrum/security/impl
cvs server: Updating src/services/java/org/apache/fulcrum/security/impl/db
cvs server: Updating
src/services/java/org/apache/fulcrum/security/impl/db/entit
y
cvs server: Updating
src/services/java/org/apache/fulcrum/security/impl/passive
cvs server: Updating src/services/java/org/apache/fulcrum/security/session
cvs server: Updating src/services/java/org/apache/fulcrum/security/util
cvs server: Updating src/services/java/org/apache/fulcrum/session
cvs server: Updating src/services/java/org/apache/fulcrum/template
cvs server: Updating src/services/java/org/apache/fulcrum/upload
cvs server: Updating src/services/java/org/apache/fulcrum/velocity
cvs server: Updating src/services/java/org/apache/fulcrum/xmlrpc
cvs server: Updating src/services/java/org/apache/fulcrum/xmlrpc/util
cvs server: Updating src/services/java/org/apache/fulcrum/xslt
cvs server: Updating src/templates
cvs server: Updating src/util
cvs server: Updating src/util/java
cvs server: Updating src/util/java/org
cvs server: Updating src/util/java/org/apache
cvs server: Updating src/util/java/org/apache/fulcrum
cvs server: Updating src/util/java/org/apache/fulcrum/template
cvs server: Updating xdocs
cvs server: Updating xdocs/images
cvs server: Updating xdocs/stylesheets
[162][ ~/checkout/jakarta-turbine-fulcrum ]% rm -r bin
[163][ ~/checkout/jakarta-turbine-fulcrum ]% ant
Buildfile: build.xml
init:
env:
[echo] java.home =
/System/Library/Frameworks/JavaVM.framework/Versions/1.3
/Home
[echo] user.home = /Users/jon
[echo] lib.repo = /Users/jon/java
[echo] velocity.jar = /Users/jon/java/velocity-1.2-dev.jar
[echo] log4j.jar = /Users/jon/java/log4j-1.1.jar
[echo] torque.jar = /Users/jon/java/torque-1.0.jar
[echo] bsf.jar = /Users/jon/java/bsf.jar
[echo] servlet.jar = /Users/jon/java/servlet.jar
[echo] javamail.jar = /Users/jon/java/mail-1.2.jar
[echo] jaf.jar = /Users/jon/java/activation-1.0.1.jar
[echo] xalan.jar = /Users/jon/java/xalan-2.1.0.jar
[echo] xmlrpc.jar = /Users/jon/java/xmlrpc.jar
[echo] commons-util.jar = /Users/jon/java/commons-util-0.1-dev.jar
[echo] [optional] commons-email.jar =
/Users/jon/java/commons-email-0.1-dev
.jar
check.velocity:
check.log4j:
check.torque:
check.bsf:
check.servlet:
check.javamail:
check.jaf:
check.xerces:
check.xalan:
check.xmlrpc:
check.commons-util:
include-email:
[copy] Copying 2 files to
/Users/jon/checkout/jakarta-turbine-fulcrum/bin/s
rc/org
check-om:
om:
init:
main:
init:
security-om:
/Users/jon/checkout/jakarta-turbine-fulcrum/bin/src/report.turbine.om.genera
tion
Resolver: used database.dtd
Resolver: used database.dtd
init:
scheduler-om:
/Users/jon/checkout/jakarta-turbine-fulcrum/bin/src/report.turbine.scheduler
.gen
eration
Resolver: used database.dtd
Resolver: used database.dtd
prepare:
[mkdir] Created dir:
/Users/jon/checkout/jakarta-turbine-fulcrum/bin/classes
[copy] Copying 117 files to
/Users/jon/checkout/jakarta-turbine-fulcrum/bin
/src/org
compile:
[javac] Compiling 143 source files to
/Users/jon/checkout/jakarta-turbine-fu
lcrum/bin/classes
jar:
[jar] Building jar:
/Users/jon/checkout/jakarta-turbine-fulcrum/bin/fulcru
m-1.0.jar
BUILD SUCCESSFUL
Total time: 31 seconds
---------------------------------------------------------------------
To unsubscribe, e-mail: alexandria-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: alexandria-dev-help@jakarta.apache.org