Repository: karaf
Updated Branches:
  refs/heads/master 6631c4291 -> d7a1e9a2b


[KARAF-3972]add wrap feature as prerequisite OOTB when a wrap url handler is 
needed for a certain bundle


Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/d7a1e9a2
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/d7a1e9a2
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/d7a1e9a2

Branch: refs/heads/master
Commit: d7a1e9a2bc56eb267cd3ac792948c03660a5f60f
Parents: 6631c42
Author: Freeman Fang <[email protected]>
Authored: Thu Oct 22 11:41:33 2015 +0800
Committer: Freeman Fang <[email protected]>
Committed: Thu Oct 22 11:41:33 2015 +0800

----------------------------------------------------------------------
 .../karaf/tooling/features/GenerateDescriptorMojo.java  | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/karaf/blob/d7a1e9a2/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/GenerateDescriptorMojo.java
----------------------------------------------------------------------
diff --git 
a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/GenerateDescriptorMojo.java
 
b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/GenerateDescriptorMojo.java
index 73bd90d..168a639 100644
--- 
a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/GenerateDescriptorMojo.java
+++ 
b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/GenerateDescriptorMojo.java
@@ -54,7 +54,6 @@ import org.apache.karaf.tooling.utils.ManifestUtils;
 import org.apache.karaf.tooling.utils.MojoSupport;
 import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
 import org.apache.maven.artifact.resolver.ArtifactResolutionException;
-import org.apache.maven.execution.MavenSession;
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugin.MojoFailureException;
 import org.apache.maven.plugin.logging.Log;
@@ -64,7 +63,6 @@ import org.apache.maven.plugins.annotations.LifecyclePhase;
 import org.apache.maven.plugins.annotations.Mojo;
 import org.apache.maven.plugins.annotations.Parameter;
 import org.apache.maven.plugins.annotations.ResolutionScope;
-import org.apache.maven.project.MavenProject;
 import org.apache.maven.shared.filtering.MavenFileFilter;
 import org.apache.maven.shared.filtering.MavenFilteringException;
 import org.apache.maven.shared.filtering.MavenResourcesExecution;
@@ -322,6 +320,7 @@ public class GenerateDescriptorMojo extends MojoSupport {
             }
             feature.getBundle().add(bundle);
         }
+        boolean needWrap = false;
         for (Map.Entry<?, String> entry : localDependencies.entrySet()) {
             Object artifact = entry.getKey();
 
@@ -346,6 +345,7 @@ public class GenerateDescriptorMojo extends MojoSupport {
 
                 if (manifest == null || 
!ManifestUtils.isBundle(getManifest(bundleFile))) {
                     bundleName = "wrap:" + bundleName;
+                    needWrap = true;
                 }
 
                 Bundle bundle = null;
@@ -371,6 +371,14 @@ public class GenerateDescriptorMojo extends MojoSupport {
             }
         }
 
+        if (needWrap) {
+            Dependency wrapDependency = new Dependency();
+            wrapDependency.setName("wrap");
+            wrapDependency.setDependency(false);
+            wrapDependency.setPrerequisite(true);
+            feature.getFeature().add(wrapDependency);
+        }
+        
         if ((!feature.getBundle().isEmpty() || 
!feature.getFeature().isEmpty()) && !features.getFeature().contains(feature)) {
             features.getFeature().add(feature);
         }

Reply via email to