Repository: karaf
Updated Branches:
  refs/heads/master 026132e73 -> 020984abd


[KARAF-3425] Add support of feature name/version format in install-kars MOJO


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

Branch: refs/heads/master
Commit: 020984abd3bc6ae9e7f6806d7b4dfdc24d7615c1
Parents: 026132e
Author: Jean-Baptiste Onofré <[email protected]>
Authored: Sun Jan 4 18:59:39 2015 +0100
Committer: Jean-Baptiste Onofré <[email protected]>
Committed: Sun Jan 4 18:59:39 2015 +0100

----------------------------------------------------------------------
 .../karaf/tooling/features/InstallKarsMojo.java | 21 +++++++++++++++-----
 1 file changed, 16 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/karaf/blob/020984ab/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/InstallKarsMojo.java
----------------------------------------------------------------------
diff --git 
a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/InstallKarsMojo.java
 
b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/InstallKarsMojo.java
index bc238ab..363539d 100644
--- 
a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/InstallKarsMojo.java
+++ 
b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/InstallKarsMojo.java
@@ -666,12 +666,23 @@ public class InstallKarsMojo extends MojoSupport {
     private void addFeatures(Set<Feature> startupFeatures, Set<Feature> 
features, String feature) {
         int nbFound = 0;
         for (Feature f : features) {
-            if (feature.equals(f.getName())) {
-                for (Dependency dep : f.getFeature()) {
-                    addFeatures(startupFeatures, features, dep.getName());
+            String[] split = feature.split("/");
+            if (split.length == 2) {
+                if (f.getName().equals(split[0]) && 
f.getVersion().equals(split[1])) {
+                    for (Dependency dep : f.getFeature()) {
+                        addFeatures(startupFeatures, features, dep.getName());
+                    }
+                    startupFeatures.add(f);
+                    nbFound++;
+                }
+            } else {
+                if (feature.equals(f.getName())) {
+                    for (Dependency dep : f.getFeature()) {
+                        addFeatures(startupFeatures, features, dep.getName());
+                    }
+                    startupFeatures.add(f);
+                    nbFound++;
                 }
-                startupFeatures.add(f);
-                nbFound++;
             }
         }
         if (nbFound == 0) {

Reply via email to