You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jb...@apache.org on 2016/09/01 14:15:15 UTC

karaf-cellar git commit: [KARAF-4671] Fix bundle symbolic name in cluster bundles list. This closes #32

Repository: karaf-cellar
Updated Branches:
  refs/heads/master 4565b92ae -> abac0f515


[KARAF-4671] Fix bundle symbolic name in cluster bundles list. This closes #32


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

Branch: refs/heads/master
Commit: abac0f515942373130c951aadd06e8f598ad17a9
Parents: 4565b92
Author: Jean-Baptiste Onofr� <jb...@apache.org>
Authored: Thu Sep 1 16:14:02 2016 +0200
Committer: Jean-Baptiste Onofr� <jb...@apache.org>
Committed: Thu Sep 1 16:14:02 2016 +0200

----------------------------------------------------------------------
 .../bundle/management/internal/CellarBundleMBeanImpl.java    | 8 +++++---
 .../karaf/cellar/bundle/shell/BundleCommandSupport.java      | 7 +++++--
 2 files changed, 10 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/karaf-cellar/blob/abac0f51/bundle/src/main/java/org/apache/karaf/cellar/bundle/management/internal/CellarBundleMBeanImpl.java
----------------------------------------------------------------------
diff --git a/bundle/src/main/java/org/apache/karaf/cellar/bundle/management/internal/CellarBundleMBeanImpl.java b/bundle/src/main/java/org/apache/karaf/cellar/bundle/management/internal/CellarBundleMBeanImpl.java
index 8efe1a0..5342f5c 100644
--- a/bundle/src/main/java/org/apache/karaf/cellar/bundle/management/internal/CellarBundleMBeanImpl.java
+++ b/bundle/src/main/java/org/apache/karaf/cellar/bundle/management/internal/CellarBundleMBeanImpl.java
@@ -588,7 +588,9 @@ public class CellarBundleMBeanImpl extends StandardMBean implements CellarBundle
 
         // retrieve local bundles
         for (Bundle bundle : bundleContext.getBundles()) {
-            String key = bundle.getSymbolicName() + "/" + bundle.getHeaders().get("Bundle-Version").toString();
+            String version = (String) bundle.getHeaders().get(org.osgi.framework.Constants.BUNDLE_VERSION);
+            String symbolicName = bundle.getSymbolicName();
+            String key = symbolicName + "/" + version;
             if (bundles.containsKey(key)) {
                 ExtendedBundleState extendedState = bundles.get(key);
                 extendedState.setLocal(true);
@@ -598,13 +600,13 @@ public class CellarBundleMBeanImpl extends StandardMBean implements CellarBundle
                 // get the bundle name or location.
                 String name = (String) bundle.getHeaders().get(org.osgi.framework.Constants.BUNDLE_NAME);
                 // if there is no name, then default to symbolic name.
-                name = (name == null) ? bundle.getSymbolicName() : name;
+                name = (name == null) ? symbolicName : name;
                 // if there is no symbolic name, resort to location.
                 name = (name == null) ? bundle.getLocation() : name;
                 extendedState.setId(bundle.getBundleId());
                 extendedState.setName(name);
                 extendedState.setVersion(bundle.getHeaders().get(org.osgi.framework.Constants.BUNDLE_VERSION));
-                extendedState.setSymbolicName(bundle.getSymbolicName());
+                extendedState.setSymbolicName(symbolicName);
                 extendedState.setLocation(bundle.getLocation());
                 extendedState.setStatus(bundle.getState());
                 extendedState.setCluster(false);

http://git-wip-us.apache.org/repos/asf/karaf-cellar/blob/abac0f51/bundle/src/main/java/org/apache/karaf/cellar/bundle/shell/BundleCommandSupport.java
----------------------------------------------------------------------
diff --git a/bundle/src/main/java/org/apache/karaf/cellar/bundle/shell/BundleCommandSupport.java b/bundle/src/main/java/org/apache/karaf/cellar/bundle/shell/BundleCommandSupport.java
index caf6e65..a04742c 100644
--- a/bundle/src/main/java/org/apache/karaf/cellar/bundle/shell/BundleCommandSupport.java
+++ b/bundle/src/main/java/org/apache/karaf/cellar/bundle/shell/BundleCommandSupport.java
@@ -177,6 +177,7 @@ public abstract class BundleCommandSupport extends CellarCommandSupport {
             ExtendedBundleState extendedState = new ExtendedBundleState();
             extendedState.setId(state.getId());
             extendedState.setName(state.getName());
+            extendedState.setSymbolicName(state.getSymbolicName());
             extendedState.setStatus(state.getStatus());
             extendedState.setLocation(state.getLocation());
             extendedState.setVersion(state.getVersion());
@@ -192,7 +193,8 @@ public abstract class BundleCommandSupport extends CellarCommandSupport {
         // retrieve local bundles
         for (Bundle bundle : bundleContext.getBundles()) {
             String version = (String) bundle.getHeaders().get(org.osgi.framework.Constants.BUNDLE_VERSION);
-            String key = bundle.getSymbolicName() + "/" + version;
+            String symbolicName = bundle.getSymbolicName();
+            String key = symbolicName + "/" + version;
             if (bundles.containsKey(key)) {
                 ExtendedBundleState extendedState = bundles.get(key);
                 extendedState.setLocal(true);
@@ -202,11 +204,12 @@ public abstract class BundleCommandSupport extends CellarCommandSupport {
                 // get the bundle name or location.
                 String name = (String) bundle.getHeaders().get(org.osgi.framework.Constants.BUNDLE_NAME);
                 // if there is no name, then default to symbolic name.
-                name = (name == null) ? bundle.getSymbolicName() : name;
+                name = (name == null) ? symbolicName : name;
                 // if there is no symbolic name, resort to location.
                 name = (name == null) ? bundle.getLocation() : name;
                 extendedState.setId(bundle.getBundleId());
                 extendedState.setName(name);
+                extendedState.setSymbolicName(symbolicName);
                 extendedState.setVersion(bundle.getHeaders().get(org.osgi.framework.Constants.BUNDLE_VERSION));
                 extendedState.setLocation(bundle.getLocation());
                 extendedState.setStatus(bundle.getState());