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 2014/10/06 11:28:08 UTC
[2/2] git commit: [KARAF-1560] Manage Boolean, Integer,
etc type in configuration
[KARAF-1560] Manage Boolean, Integer, etc type in configuration
Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/281d5b66
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/281d5b66
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/281d5b66
Branch: refs/heads/karaf-2.3.x
Commit: 281d5b667ed3b84857c423714b6a1cb293a70f89
Parents: 045643f
Author: Jean-Baptiste Onofré <jb...@apache.org>
Authored: Mon Oct 6 11:27:07 2014 +0200
Committer: Jean-Baptiste Onofré <jb...@apache.org>
Committed: Mon Oct 6 11:27:07 2014 +0200
----------------------------------------------------------------------
.../mbeans/config/internal/ConfigMBeanImpl.java | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/karaf/blob/281d5b66/management/mbeans/config/src/main/java/org/apache/karaf/management/mbeans/config/internal/ConfigMBeanImpl.java
----------------------------------------------------------------------
diff --git a/management/mbeans/config/src/main/java/org/apache/karaf/management/mbeans/config/internal/ConfigMBeanImpl.java b/management/mbeans/config/src/main/java/org/apache/karaf/management/mbeans/config/internal/ConfigMBeanImpl.java
index 28a1694..150cdc7 100644
--- a/management/mbeans/config/src/main/java/org/apache/karaf/management/mbeans/config/internal/ConfigMBeanImpl.java
+++ b/management/mbeans/config/src/main/java/org/apache/karaf/management/mbeans/config/internal/ConfigMBeanImpl.java
@@ -205,7 +205,7 @@ public class ConfigMBeanImpl extends StandardMBean implements ConfigMBean {
* @param properties the configuration properties.
* @throws Exception
*/
- private void store(String pid, Dictionary properties, boolean bypassStorage) throws Exception {
+ private void store(String pid, Dictionary<String, Object> properties, boolean bypassStorage) throws Exception {
if (!bypassStorage && storage != null) {
File storageFile = new File(storage, pid + ".cfg");
Configuration configuration = configurationAdmin.getConfiguration(pid, null);
@@ -227,22 +227,24 @@ public class ConfigMBeanImpl extends StandardMBean implements ConfigMBean {
}
Properties p = new Properties(storageFile);
p.clear();
- for (Enumeration keys = properties.keys(); keys.hasMoreElements(); ) {
- Object key = keys.nextElement();
+ for (Enumeration<String> keys = properties.keys(); keys.hasMoreElements(); ) {
+ String key = keys.nextElement();
if (!Constants.SERVICE_PID.equals(key)
&& !ConfigurationAdmin.SERVICE_FACTORYPID.equals(key)
&& !FELIX_FILEINSTALL_FILENAME.equals(key)) {
- p.put((String) key, (String) properties.get(key));
+ if (properties.get(key) != null) {
+ p.put(key, properties.get(key).toString());
+ }
}
}
// remove "removed" properties from the file
ArrayList<String> propertiesToRemove = new ArrayList<String>();
- for (Object key : p.keySet()) {
+ for (String key : p.keySet()) {
if (properties.get(key) == null
&& !Constants.SERVICE_PID.equals(key)
&& !ConfigurationAdmin.SERVICE_FACTORYPID.equals(key)
&& !FELIX_FILEINSTALL_FILENAME.equals(key)) {
- propertiesToRemove.add(key.toString());
+ propertiesToRemove.add(key);
}
}
for (String key : propertiesToRemove) {