You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ws.apache.org by jo...@apache.org on 2011/01/24 23:55:49 UTC

svn commit: r1063049 - in /webservices/xmlrpc/trunk: client/pom.xml common/pom.xml pom.xml server/pom.xml src/changes/changes.xml

Author: jochen
Date: Mon Jan 24 22:55:48 2011
New Revision: 1063049

URL: http://svn.apache.org/viewvc?rev=1063049&view=rev
Log:
PR: XMLRPC-184
Submitted-By: Antoine Toulme <an...@lunar-ocean.com>
Jar files are now created as proper OSGI packages using the bundle-maven-plugin.

Modified:
    webservices/xmlrpc/trunk/client/pom.xml
    webservices/xmlrpc/trunk/common/pom.xml
    webservices/xmlrpc/trunk/pom.xml
    webservices/xmlrpc/trunk/server/pom.xml
    webservices/xmlrpc/trunk/src/changes/changes.xml

Modified: webservices/xmlrpc/trunk/client/pom.xml
URL: http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/client/pom.xml?rev=1063049&r1=1063048&r2=1063049&view=diff
==============================================================================
--- webservices/xmlrpc/trunk/client/pom.xml (original)
+++ webservices/xmlrpc/trunk/client/pom.xml Mon Jan 24 22:55:48 2011
@@ -29,27 +29,55 @@
   </parent>
   <artifactId>xmlrpc-client</artifactId>
   <name>Apache XML-RPC Client Library</name>
+  <packaging>bundle</packaging>
+  <properties>
+      <xmlrpc.osgi.version>version=${project.version}</xmlrpc.osgi.version>
+      <xmlrpc.osgi.export.pkg>
+          org.apache.xmlrpc.*
+      </xmlrpc.osgi.export.pkg>
+      <xmlrpc.osgi.import.pkg>
+          !org.apache.xmlrpc.*,
+          !javax.xml.*,
+          !org.w3c.dom,
+          *
+      </xmlrpc.osgi.import.pkg>
+      <xmlrpc.osgi.symbolic.name>${project.groupId}.${project.artifactId}</xmlrpc.osgi.symbolic.name>
+      <xmlrpc.osgi.activator />
+      <xmlrpc.osgi.export>${xmlrpc.osgi.export.pkg};${xmlrpc.osgi.version}</xmlrpc.osgi.export>
+      <xmlrpc.osgi.import>${xmlrpc.osgi.import.pkg}</xmlrpc.osgi.import>
+      <xmlrpc.osgi.dynamic />
+      <xmlrpc.osgi.private.pkg>!*</xmlrpc.osgi.private.pkg>
+      <xmlrpc.osgi.failok>false</xmlrpc.osgi.failok>
+      <xmlrpc.osgi.import.default.version>[$(version;==;$(@)),$(version;+;$(@)))</xmlrpc.osgi.import.default.version>
+      <xmlrpc.osgi.exclude.dependencies>false</xmlrpc.osgi.exclude.dependencies>
+  </properties>
   <build>
     <plugins>
       <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-jar-plugin</artifactId>
-        <version>2.2</version>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
+        <!--<version>${felix-version}</version>-->
+        <extensions>true</extensions>
         <configuration>
-          <archive>
-            <manifest>
-              <addExtensions>false</addExtensions>
-            </manifest>
-            <manifestEntries>
-              <Extension-Name>org.apache.xmlrpc.client</Extension-Name>
-              <Specification-Vendor>UserLand Software, Inc.</Specification-Vendor>
-              <Specification-Version>2003-06-30</Specification-Version>
-              <Specification-Title>XML-RPC</Specification-Title>
-              <Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id>
-              <Implementation-Vendor>Apache Software Foundation</Implementation-Vendor>
-              <Implementation-Version>${project.version}</Implementation-Version>
-            </manifestEntries>
-          </archive>
+          <excludeDependencies>${xmlrpc.osgi.exclude.dependencies}</excludeDependencies>
+          <instructions>
+            <Extension-Name>org.apache.xmlrpc.client</Extension-Name>
+            <Specification-Vendor>UserLand Software, Inc.</Specification-Vendor>
+            <Specification-Version>2003-06-30</Specification-Version>
+            <Specification-Title>XML-RPC</Specification-Title>
+            <Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id>
+            <Implementation-Vendor>Apache Software Foundation</Implementation-Vendor>
+            <Implementation-Version>${project.version}</Implementation-Version>
+            <Bundle-Name>${project.artifactId}</Bundle-Name>
+            <Bundle-SymbolicName>${xmlrpc.osgi.symbolic.name}</Bundle-SymbolicName>
+            <Bundle-Activator>${xmlrpc.osgi.activator}</Bundle-Activator>
+            <Export-Package>${xmlrpc.osgi.export}</Export-Package>
+            <Import-Package>${xmlrpc.osgi.import}</Import-Package>
+            <DynamicImport-Package>${xmlrpc.osgi.dynamic}</DynamicImport-Package>
+            <Private-Package>${xmlrpc.osgi.private.pkg}</Private-Package>
+            <_versionpolicy>${xmlrpc.osgi.import.default.version}</_versionpolicy>
+            <_failok>${xmlrpc.osgi.failok}</_failok>
+          </instructions>
         </configuration>
       </plugin>
     </plugins>

Modified: webservices/xmlrpc/trunk/common/pom.xml
URL: http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/common/pom.xml?rev=1063049&r1=1063048&r2=1063049&view=diff
==============================================================================
--- webservices/xmlrpc/trunk/common/pom.xml (original)
+++ webservices/xmlrpc/trunk/common/pom.xml Mon Jan 24 22:55:48 2011
@@ -27,20 +27,40 @@
     <version>3.1.4-SNAPSHOT</version>
     <relativePath>../pom.xml</relativePath>
   </parent>
+  <properties>
+      <xmlrpc.osgi.version>version=${project.version}</xmlrpc.osgi.version>
+      <xmlrpc.osgi.export.pkg>
+          org.apache.xmlrpc.*
+      </xmlrpc.osgi.export.pkg>
+      <xmlrpc.osgi.import.pkg>
+          !org.apache.xmlrpc.*,
+          !javax.xml.*,
+          !org.w3c.dom,
+          *
+      </xmlrpc.osgi.import.pkg>
+      <xmlrpc.osgi.symbolic.name>${project.groupId}.${project.artifactId}</xmlrpc.osgi.symbolic.name>
+      <xmlrpc.osgi.activator />
+      <xmlrpc.osgi.export>${xmlrpc.osgi.export.pkg};${xmlrpc.osgi.version}</xmlrpc.osgi.export>
+      <xmlrpc.osgi.import>${xmlrpc.osgi.import.pkg}</xmlrpc.osgi.import>
+      <xmlrpc.osgi.dynamic />
+      <xmlrpc.osgi.private.pkg>!*</xmlrpc.osgi.private.pkg>
+      <xmlrpc.osgi.failok>false</xmlrpc.osgi.failok>
+      <xmlrpc.osgi.import.default.version>[$(version;==;$(@)),$(version;+;$(@)))</xmlrpc.osgi.import.default.version>
+      <xmlrpc.osgi.exclude.dependencies>false</xmlrpc.osgi.exclude.dependencies>
+  </properties>
   <artifactId>xmlrpc-common</artifactId>
+  <packaging>bundle</packaging>
   <name>Apache XML-RPC Common Library</name>
   <build>
     <plugins>
       <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-jar-plugin</artifactId>
-        <version>2.2</version>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
+        <!--<version>${felix-version}</version>-->
+        <extensions>true</extensions>
         <configuration>
-          <archive>
-            <manifest>
-              <addExtensions>false</addExtensions>
-            </manifest>
-            <manifestEntries>
+            <excludeDependencies>${xmlrpc.osgi.exclude.dependencies}</excludeDependencies>
+            <instructions>
               <Extension-Name>org.apache.xmlrpc</Extension-Name>
               <Specification-Vendor>UserLand Software, Inc.</Specification-Vendor>
               <Specification-Version>2003-06-30</Specification-Version>
@@ -48,8 +68,16 @@
               <Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id>
               <Implementation-Vendor>Apache Software Foundation</Implementation-Vendor>
               <Implementation-Version>${project.version}</Implementation-Version>
-            </manifestEntries>
-          </archive>
+              <Bundle-Name>${project.artifactId}</Bundle-Name>
+              <Bundle-SymbolicName>${xmlrpc.osgi.symbolic.name}</Bundle-SymbolicName>
+              <Bundle-Activator>${xmlrpc.osgi.activator}</Bundle-Activator>
+              <Export-Package>${xmlrpc.osgi.export}</Export-Package>
+              <Import-Package>${xmlrpc.osgi.import}</Import-Package>
+              <DynamicImport-Package>${xmlrpc.osgi.dynamic}</DynamicImport-Package>
+              <Private-Package>${xmlrpc.osgi.private.pkg}</Private-Package>
+              <_versionpolicy>${xmlrpc.osgi.import.default.version}</_versionpolicy>
+              <_failok>${xmlrpc.osgi.failok}</_failok>
+            </instructions>
         </configuration>
       </plugin>
     </plugins>

Modified: webservices/xmlrpc/trunk/pom.xml
URL: http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/pom.xml?rev=1063049&r1=1063048&r2=1063049&view=diff
==============================================================================
--- webservices/xmlrpc/trunk/pom.xml (original)
+++ webservices/xmlrpc/trunk/pom.xml Mon Jan 24 22:55:48 2011
@@ -271,6 +271,10 @@
       <email>andreas.sahlbach@gmail.com</email>
     </contributor>
     <contributor>
+      <name>Antoine Toulme</name>
+      <email>antoine@lunar-ocean.com</email>
+    </contributor>
+    <contributor>
       <name>Julio Francisco Veronelli</name>
       <email>ckjfveronelli@fibertel.com.ar</email>
     </contributor>
@@ -321,6 +325,15 @@
         </configuration>
       </plugin>
     </plugins>
+    <pluginManagement>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>maven-bundle-plugin</artifactId>
+                <version>2.0.1</version>
+            </plugin>
+        </plugins>
+    </pluginManagement>
   </build>
 
   <dependencyManagement>

Modified: webservices/xmlrpc/trunk/server/pom.xml
URL: http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/server/pom.xml?rev=1063049&r1=1063048&r2=1063049&view=diff
==============================================================================
--- webservices/xmlrpc/trunk/server/pom.xml (original)
+++ webservices/xmlrpc/trunk/server/pom.xml Mon Jan 24 22:55:48 2011
@@ -29,29 +29,58 @@
   </parent>
   <artifactId>xmlrpc-server</artifactId>
   <name>Apache XML-RPC Server Library</name>
+  <packaging>bundle</packaging>
+  <properties>
+      <xmlrpc.osgi.version>version=${project.version}</xmlrpc.osgi.version>
+      <xmlrpc.osgi.export.pkg>
+          org.apache.xmlrpc.*
+      </xmlrpc.osgi.export.pkg>
+      <xmlrpc.osgi.import.pkg>
+          !org.apache.xmlrpc.*,
+          !javax.xml.*,
+          !org.w3c.dom,
+          *
+      </xmlrpc.osgi.import.pkg>
+      <xmlrpc.osgi.symbolic.name>${project.groupId}.${project.artifactId}</xmlrpc.osgi.symbolic.name>
+      <xmlrpc.osgi.activator />
+      <xmlrpc.osgi.export>${xmlrpc.osgi.export.pkg};${xmlrpc.osgi.version}</xmlrpc.osgi.export>
+      <xmlrpc.osgi.import>${xmlrpc.osgi.import.pkg}</xmlrpc.osgi.import>
+      <xmlrpc.osgi.dynamic />
+      <xmlrpc.osgi.private.pkg>!*</xmlrpc.osgi.private.pkg>
+      <xmlrpc.osgi.failok>false</xmlrpc.osgi.failok>
+      <xmlrpc.osgi.import.default.version>[$(version;==;$(@)),$(version;+;$(@)))</xmlrpc.osgi.import.default.version>
+      <xmlrpc.osgi.exclude.dependencies>false</xmlrpc.osgi.exclude.dependencies>
+  </properties>
   <build>
     <plugins>
       <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-jar-plugin</artifactId>
-        <version>2.2</version>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
+        <!--<version>${felix-version}</version>-->
+        <extensions>true</extensions>
         <configuration>
-          <archive>
-            <manifest>
-              <addExtensions>false</addExtensions>
-            </manifest>
-            <manifestEntries>
-              <Extension-Name>org.apache.xmlrpc.server</Extension-Name>
-              <Specification-Vendor>UserLand Software, Inc.</Specification-Vendor>
-              <Specification-Version>2003-06-30</Specification-Version>
-              <Specification-Title>XML-RPC</Specification-Title>
-              <Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id>
-              <Implementation-Vendor>Apache Software Foundation</Implementation-Vendor>
-              <Implementation-Version>${project.version}</Implementation-Version>
-            </manifestEntries>
-          </archive>
+          <excludeDependencies>${xmlrpc.osgi.exclude.dependencies}</excludeDependencies>
+          <instructions>
+            <Extension-Name>org.apache.xmlrpc.server</Extension-Name>
+            <Specification-Vendor>UserLand Software, Inc.</Specification-Vendor>
+            <Specification-Version>2003-06-30</Specification-Version>
+            <Specification-Title>XML-RPC</Specification-Title>
+            <Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id>
+            <Implementation-Vendor>Apache Software Foundation</Implementation-Vendor>
+            <Implementation-Version>${project.version}</Implementation-Version>
+            <Bundle-Name>${project.artifactId}</Bundle-Name>
+            <Bundle-SymbolicName>${xmlrpc.osgi.symbolic.name}</Bundle-SymbolicName>
+            <Bundle-Activator>${xmlrpc.osgi.activator}</Bundle-Activator>
+            <Export-Package>${xmlrpc.osgi.export}</Export-Package>
+            <Import-Package>${xmlrpc.osgi.import}</Import-Package>
+            <DynamicImport-Package>${xmlrpc.osgi.dynamic}</DynamicImport-Package>
+            <Private-Package>${xmlrpc.osgi.private.pkg}</Private-Package>
+            <_versionpolicy>${xmlrpc.osgi.import.default.version}</_versionpolicy>
+            <_failok>${xmlrpc.osgi.failok}</_failok>
+          </instructions>
         </configuration>
       </plugin>
+
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-surefire-plugin</artifactId>

Modified: webservices/xmlrpc/trunk/src/changes/changes.xml
URL: http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/src/changes/changes.xml?rev=1063049&r1=1063048&r2=1063049&view=diff
==============================================================================
--- webservices/xmlrpc/trunk/src/changes/changes.xml (original)
+++ webservices/xmlrpc/trunk/src/changes/changes.xml Mon Jan 24 22:55:48 2011
@@ -27,6 +27,9 @@
       <action dev="jochen" type="add" due-to="Teemu Kanstren" due-to-email="tkanstren@gmail.com">
         Added example documentation on request processor creation.
       </action>
+      <action dev="jochen" type="add" issue="XMLRPC-184" due-to="Antoine Toulme" due-to-email="antoine@lunar-ocean.com">
+        Jar files are now created as proper OSGI packages using the bundle-maven-plugin.
+      </action>
     </release>
 
     <release version="3.1.3" date="2010-Feb-06">