You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by da...@apache.org on 2008/12/23 12:26:39 UTC

svn commit: r728928 - in /cxf/sandbox/dosgi/distribution/multi-bundle: pom.xml src/main/resources/config.properties.append.template src/main/resources/distro_bundles.xml src/main/xsl/ src/main/xsl/equinox_config.xslt src/main/xsl/felix_config.xslt

Author: davidb
Date: Tue Dec 23 03:26:37 2008
New Revision: 728928

URL: http://svn.apache.org/viewvc?rev=728928&view=rev
Log:
Generate both Equinox and Felix configuration from the same source.
Replaced the template file based configuration generation with XSLT based generation.
The resulting config file snippets are called:
  <target-runtime>.<config-file-name>.append

E.g.:
felix.config.properties.append
equinox.config.ini.append

Verified the generated configuration files with Felix pre-1.4.1 trunk and Eclipse (Equinox) 3.5M4

Added:
    cxf/sandbox/dosgi/distribution/multi-bundle/src/main/resources/distro_bundles.xml   (with props)
    cxf/sandbox/dosgi/distribution/multi-bundle/src/main/xsl/
    cxf/sandbox/dosgi/distribution/multi-bundle/src/main/xsl/equinox_config.xslt
    cxf/sandbox/dosgi/distribution/multi-bundle/src/main/xsl/felix_config.xslt
Removed:
    cxf/sandbox/dosgi/distribution/multi-bundle/src/main/resources/config.properties.append.template
Modified:
    cxf/sandbox/dosgi/distribution/multi-bundle/pom.xml

Modified: cxf/sandbox/dosgi/distribution/multi-bundle/pom.xml
URL: http://svn.apache.org/viewvc/cxf/sandbox/dosgi/distribution/multi-bundle/pom.xml?rev=728928&r1=728927&r2=728928&view=diff
==============================================================================
--- cxf/sandbox/dosgi/distribution/multi-bundle/pom.xml (original)
+++ cxf/sandbox/dosgi/distribution/multi-bundle/pom.xml Tue Dec 23 03:26:37 2008
@@ -23,7 +23,7 @@
   <groupId>org.apache.cxf</groupId>
   <artifactId>cxf-dosgi-ri-multibundle-distribution</artifactId>
   <version>1.0-SNAPSHOT</version>
-  <packaging>jar</packaging>
+  <packaging>pom</packaging>
   <name>Distributed OSGI Multi-Bundle Distribution</name>
   <url>http://cxf.apache.org</url>
 
@@ -267,6 +267,13 @@
 
       <plugin>
         <artifactId>maven-antrun-plugin</artifactId>
+        <dependencies>
+          <dependency>
+            <groupId>ant</groupId>
+            <artifactId>ant-trax</artifactId>
+            <version>1.6.5</version>
+          </dependency>
+        </dependencies>
         <executions>
           <execution>
             <phase>package</phase>
@@ -277,11 +284,19 @@
                 </path>
                 <pathconvert targetos="unix" property="current.dir" refid="current.dir.path"/>
                 
-                <copy file="target/classes/config.properties.append.template" tofile="target/config.properties.append">
-                  <filterset>
-                    <filter token="TARGET" value="${current.dir}/target"/>
-                  </filterset>
-                </copy>
+                <xslt processor="trax" 
+                  in="src/main/resources/distro_bundles.xml" 
+                  out="target/felix.config.properties.append"
+                  style="src/main/xsl/felix_config.xslt">
+                      <param name="TargetDir" expression="${current.dir}/target/"/>
+                </xslt>
+                
+                <xslt processor="trax" 
+                  in="src/main/resources/distro_bundles.xml" 
+                  out="target/equinox.config.ini.append"
+                  style="src/main/xsl/equinox_config.xslt">
+                      <param name="TargetDir" expression="${current.dir}/target/"/>
+                </xslt>
               </tasks>
             </configuration>
             <goals>

Added: cxf/sandbox/dosgi/distribution/multi-bundle/src/main/resources/distro_bundles.xml
URL: http://svn.apache.org/viewvc/cxf/sandbox/dosgi/distribution/multi-bundle/src/main/resources/distro_bundles.xml?rev=728928&view=auto
==============================================================================
--- cxf/sandbox/dosgi/distribution/multi-bundle/src/main/resources/distro_bundles.xml (added)
+++ cxf/sandbox/dosgi/distribution/multi-bundle/src/main/resources/distro_bundles.xml Tue Dec 23 03:26:37 2008
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bundles>
+  <felix_deps>deps/org.osgi.compendium-1.2.0.jar</felix_deps>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/geronimo-annotation_1.0_spec-1.1.1.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/geronimo-activation_1.1_spec-1.0.2.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/geronimo-javamail_1.4_spec-1.2.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/geronimo-ws-metadata_2.0_spec-1.1.2.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/geronimo-servlet_2.5_spec-1.1.2.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/com.springsource.org.apache.commons.logging-1.1.1.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/com.springsource.org.jdom-1.0.0.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/spring-core-2.5.5.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/spring-beans-2.5.5.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/spring-context-2.5.5.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/com.springsource.org.aopalliance-1.0.0.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/spring-aop-2.5.5.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/spring-osgi-io-1.1.2.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/spring-osgi-core-1.1.2.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/spring-osgi-extender-1.1.2.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/jetty-util-6.1.9.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/jetty-6.1.9.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/org.apache.servicemix.specs.locator-1.0.0.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/org.apache.servicemix.bundles.jaxb-impl-2.0.3-4.0-m1.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/org.apache.servicemix.bundles.wsdl4j-1.6.1-4.0-m1.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/org.apache.servicemix.bundles.xmlschema-1.3.2-4.0-m1.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/org.apache.servicemix.bundles.asm-2.2.3-1.0.0-rc1.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/org.apache.servicemix.bundles.xmlresolver-1.2-4.0-m1.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/org.apache.servicemix.bundles.neethi-2.0.2-4.0-m1.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/org.apache.servicemix.bundles.woodstox-3.2.7_1.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/cxf-bundle-minimal-2.0.8.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/cxf-dosgi-ri-discovery-local-1.0-SNAPSHOT.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/cxf-dosgi-ri-dsw-cxf-1.0-SNAPSHOT.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/org.apache.servicemix.specs.saaj-api-1.3-1.0.0.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/org.apache.servicemix.specs.stax-api-1.0-1.0.0.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/org.apache.servicemix.specs.jaxb-api-2.0-1.0.0.jar</bundle>
+  <bundle>cxf-dosgi-ri-multibundle-distribution-1.0-SNAPSHOT-dosgi-ri-multi-bundle-assembly.dir/bundles/org.apache.servicemix.specs.jaxws-api-2.0-1.0.0.jar</bundle>
+</bundles>
+  

Propchange: cxf/sandbox/dosgi/distribution/multi-bundle/src/main/resources/distro_bundles.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/sandbox/dosgi/distribution/multi-bundle/src/main/resources/distro_bundles.xml
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: cxf/sandbox/dosgi/distribution/multi-bundle/src/main/resources/distro_bundles.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: cxf/sandbox/dosgi/distribution/multi-bundle/src/main/xsl/equinox_config.xslt
URL: http://svn.apache.org/viewvc/cxf/sandbox/dosgi/distribution/multi-bundle/src/main/xsl/equinox_config.xslt?rev=728928&view=auto
==============================================================================
--- cxf/sandbox/dosgi/distribution/multi-bundle/src/main/xsl/equinox_config.xslt (added)
+++ cxf/sandbox/dosgi/distribution/multi-bundle/src/main/xsl/equinox_config.xslt Tue Dec 23 03:26:37 2008
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+  <xsl:output method="text" version="1.0" encoding="UTF-8" indent="yes"/>
+  <xsl:param name="TargetDir"/>
+  <xsl:template match="/">
+osgi.bundles=org.eclipse.osgi.services@start, \
+  <xsl:for-each select="//bundles/bundle"><xsl:value-of select="$TargetDir"/><xsl:value-of select="text()"/><xsl:value-of select="string('@start, ')"/></xsl:for-each>
+  </xsl:template>
+</xsl:transform>
+

Added: cxf/sandbox/dosgi/distribution/multi-bundle/src/main/xsl/felix_config.xslt
URL: http://svn.apache.org/viewvc/cxf/sandbox/dosgi/distribution/multi-bundle/src/main/xsl/felix_config.xslt?rev=728928&view=auto
==============================================================================
--- cxf/sandbox/dosgi/distribution/multi-bundle/src/main/xsl/felix_config.xslt (added)
+++ cxf/sandbox/dosgi/distribution/multi-bundle/src/main/xsl/felix_config.xslt Tue Dec 23 03:26:37 2008
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+  <xsl:output method="text" version="1.0" encoding="UTF-8" indent="yes"/>
+  <xsl:param name="TargetDir"/>
+  <xsl:template match="/">
+org.osgi.framework.startlevel=<xsl:value-of select="count(//bundles/felix_deps) + count(//bundles/bundle) + 1"/>
+    <xsl:for-each select="//bundles/felix_deps">
+      <xsl:variable name="i" select="position() + 1"/>
+felix.auto.start.<xsl:value-of select="$i"/>=file:/<xsl:value-of select="$TargetDir"/><xsl:value-of select="text()"/>
+    </xsl:for-each>
+    <xsl:for-each select="//bundles/bundle">
+      <xsl:variable name="i" select="position() + count(//bundles/felix_deps) + 1"/>
+felix.auto.start.<xsl:value-of select="$i"/>=file:/<xsl:value-of select="$TargetDir"/><xsl:value-of select="text()"/>
+    </xsl:for-each>
+  </xsl:template>
+</xsl:transform>
+