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() &lt; $position and
                                           @project=$dependency])">
               <depend project="{$dependency}">
  -              <noclasspath/>
  +              <xsl:if test="not(@classpath)">
  +                <noclasspath/>
  +              </xsl:if>
               </depend>
               <xsl:text>&#10;</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