diff --git a/router/java/src/net/i2p/router/Router.java b/router/java/src/net/i2p/router/Router.java index b568046f6d4433b4a9a00363a8c4a12e46375ab7..24560b3af92f17ce10b57b3e37d8794df7f9f382 100644 --- a/router/java/src/net/i2p/router/Router.java +++ b/router/java/src/net/i2p/router/Router.java @@ -345,6 +345,8 @@ public class Router implements RouterClock.ClockShiftListener { */ public void removeConfigSetting(String name) { _config.remove(name); + // remove the backing default also + _context.removeProperty(name); } /** @@ -1279,7 +1281,7 @@ public class Router implements RouterClock.ClockShiftListener { if (value != null) _config.put(name, value); else - _config.remove(name); + removeConfigSetting(name); return saveConfig(); } @@ -1298,7 +1300,7 @@ public class Router implements RouterClock.ClockShiftListener { _config.putAll(toAdd); if (toRemove != null) { for (String s : toRemove) { - _config.remove(s); + removeConfigSetting(s); } } return saveConfig(); diff --git a/router/java/src/net/i2p/router/RouterContext.java b/router/java/src/net/i2p/router/RouterContext.java index 5c5b4a2cab38781b07da8a802df8faee95411579..0debc4ff11978c861d44bc781c0d3b28717904d9 100644 --- a/router/java/src/net/i2p/router/RouterContext.java +++ b/router/java/src/net/i2p/router/RouterContext.java @@ -113,12 +113,26 @@ public class RouterContext extends I2PAppContext { /** * Modify the configuration attributes of this context, changing * one of the properties provided during the context construction. + * * @param propName The name of the property. * @param value The new value for the property. + * @since 0.8.4 + * @deprecated Use Router.saveConfig() */ public void setProperty(String propName, String value) { _overrideProps.setProperty(propName, value); } + + /** + * Remove a property provided during the context construction. + * Only for use by the router. Others use Router.saveConfig() + * + * @param propName The name of the property. + * @since 0.9 + */ + void removeProperty(String propName) { + _overrideProps.remove(propName); + } public void addPropertyCallback(I2PPropertyCallback callback) {