You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by gn...@apache.org on 2011/01/27 10:41:57 UTC
svn commit: r1064060 - in /karaf/trunk/deployer/wrap: pom.xml
src/main/java/org/apache/karaf/deployer/wrap/WrapDeploymentListener.java
Author: gnodet
Date: Thu Jan 27 09:41:57 2011
New Revision: 1064060
URL: http://svn.apache.org/viewvc?rev=1064060&view=rev
Log:
[KARAF-380] Compute meaninfull symbolic name and version for the wrap deployer
Modified:
karaf/trunk/deployer/wrap/pom.xml
karaf/trunk/deployer/wrap/src/main/java/org/apache/karaf/deployer/wrap/WrapDeploymentListener.java
Modified: karaf/trunk/deployer/wrap/pom.xml
URL: http://svn.apache.org/viewvc/karaf/trunk/deployer/wrap/pom.xml?rev=1064060&r1=1064059&r2=1064060&view=diff
==============================================================================
--- karaf/trunk/deployer/wrap/pom.xml (original)
+++ karaf/trunk/deployer/wrap/pom.xml Thu Jan 27 09:41:57 2011
@@ -39,6 +39,10 @@
<dependencies>
<dependency>
+ <groupId>org.apache.karaf</groupId>
+ <artifactId>org.apache.karaf.util</artifactId>
+ </dependency>
+ <dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.core</artifactId>
<scope>provided</scope>
@@ -67,7 +71,10 @@
<Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
<Export-Package>${project.artifactId}*;version=${project.version}</Export-Package>
<Import-Package>!${project.artifactId}*,*</Import-Package>
- <Private-Package>org.apache.karaf.deployer.wrap</Private-Package>
+ <Private-Package>
+ org.apache.karaf.deployer.wrap,
+ org.apache.karaf.util
+ </Private-Package>
<_versionpolicy>${bnd.version.policy}</_versionpolicy>
</instructions>
</configuration>
Modified: karaf/trunk/deployer/wrap/src/main/java/org/apache/karaf/deployer/wrap/WrapDeploymentListener.java
URL: http://svn.apache.org/viewvc/karaf/trunk/deployer/wrap/src/main/java/org/apache/karaf/deployer/wrap/WrapDeploymentListener.java?rev=1064060&r1=1064059&r2=1064060&view=diff
==============================================================================
--- karaf/trunk/deployer/wrap/src/main/java/org/apache/karaf/deployer/wrap/WrapDeploymentListener.java (original)
+++ karaf/trunk/deployer/wrap/src/main/java/org/apache/karaf/deployer/wrap/WrapDeploymentListener.java Thu Jan 27 09:41:57 2011
@@ -17,14 +17,15 @@
*/
package org.apache.karaf.deployer.wrap;
-import org.apache.felix.fileinstall.ArtifactUrlTransformer;
-
import java.io.File;
import java.net.URL;
import java.util.jar.Attributes;
import java.util.jar.JarFile;
import java.util.jar.Manifest;
+import org.apache.felix.fileinstall.ArtifactUrlTransformer;
+import org.apache.karaf.util.DeployerUtils;
+
/**
* <p>
* A deployment listener that listens for non OSGi jar deployements.
@@ -55,11 +56,15 @@ public class WrapDeploymentListener impl
}
public URL transform(URL artifact) throws Exception {
- String path = artifact.getPath();
- String protocol = artifact.getProtocol();
-
- // TODO add Bundle-SymbolicName and Bundle-Version to the wrap URL
- return new URL("wrap", null, protocol + ":" + path);
+ try
+ {
+ String path = artifact.getPath();
+ String name = path.substring( path.lastIndexOf('/') + 1);
+ String[] nv = DeployerUtils.extractNameVersionType( name );
+ return new URL("wrap", null, artifact.toExternalForm() + "$Bundle-SymbolicName=" + nv[0] + "&Bundle-Version=" + nv[1]);
+ } catch (Exception e) {
+ return new URL("wrap", null, artifact.toExternalForm());
+ }
}
}