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 2011/10/25 14:30:29 UTC
svn commit: r1188630 -
/karaf/branches/karaf-2.2.x/shell/config/src/main/java/org/apache/karaf/shell/config/UpdateCommand.java
Author: jbonofre
Date: Tue Oct 25 12:30:29 2011
New Revision: 1188630
URL: http://svn.apache.org/viewvc?rev=1188630&view=rev
Log:
[KARAF-952] config:propdel deletes the property from the cfg file
Modified:
karaf/branches/karaf-2.2.x/shell/config/src/main/java/org/apache/karaf/shell/config/UpdateCommand.java
Modified: karaf/branches/karaf-2.2.x/shell/config/src/main/java/org/apache/karaf/shell/config/UpdateCommand.java
URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.2.x/shell/config/src/main/java/org/apache/karaf/shell/config/UpdateCommand.java?rev=1188630&r1=1188629&r2=1188630&view=diff
==============================================================================
--- karaf/branches/karaf-2.2.x/shell/config/src/main/java/org/apache/karaf/shell/config/UpdateCommand.java (original)
+++ karaf/branches/karaf-2.2.x/shell/config/src/main/java/org/apache/karaf/shell/config/UpdateCommand.java Tue Oct 25 12:30:29 2011
@@ -17,6 +17,7 @@
package org.apache.karaf.shell.config;
import java.io.File;
+import java.util.ArrayList;
import java.util.Dictionary;
import java.util.Enumeration;
@@ -74,6 +75,20 @@ public class UpdateCommand extends Confi
p.put((String) key, (String) props.get(key));
}
}
+ // remove "removed" properties from the file
+ ArrayList<String> propertiesToRemove = new ArrayList<String>();
+ for (String key : p.keySet()) {
+ if (props.get(key) == null
+ && !Constants.SERVICE_PID.equals(key)
+ && !ConfigurationAdmin.SERVICE_FACTORYPID.equals(key)
+ && !FELIX_FILEINSTALL_FILENAME.equals(key)) {
+ propertiesToRemove.add(key);
+ }
+ }
+ for (String key : propertiesToRemove) {
+ p.remove(key);
+ }
+ // save the cfg file
storage.mkdirs();
p.save();
} else {