You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by he...@apache.org on 2015/04/13 03:11:49 UTC
[2/3] incubator-brooklyn git commit: addressed code review comments
on making ConfigBag thread safe
addressed code review comments on making ConfigBag thread safe
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/4cffb0ac
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/4cffb0ac
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/4cffb0ac
Branch: refs/heads/master
Commit: 4cffb0acde90713bfad090524cbd71b32a32cd68
Parents: 5e34f95
Author: Alex Heneveld <al...@cloudsoftcorp.com>
Authored: Sun Apr 12 20:11:03 2015 -0500
Committer: Alex Heneveld <al...@cloudsoftcorp.com>
Committed: Sun Apr 12 20:11:03 2015 -0500
----------------------------------------------------------------------
core/src/main/java/brooklyn/util/config/ConfigBag.java | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/4cffb0ac/core/src/main/java/brooklyn/util/config/ConfigBag.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/brooklyn/util/config/ConfigBag.java b/core/src/main/java/brooklyn/util/config/ConfigBag.java
index 220ec52..606e2fc 100644
--- a/core/src/main/java/brooklyn/util/config/ConfigBag.java
+++ b/core/src/main/java/brooklyn/util/config/ConfigBag.java
@@ -49,7 +49,8 @@ import com.google.common.collect.Sets;
* although in some cases (such as setting fields from flags, or copying a map)
* it may be necessary to mark things as used, or put, when only a string key is available.
* <p>
- * This bag is order-preserving and thread-safe except where otherwise indicated.
+ * This bag is order-preserving and thread-safe except where otherwise indicated,
+ * currently by synching on this instance (but that behaviour may change).
* <p>
* @author alex
*/
@@ -104,14 +105,15 @@ public class ConfigBag {
*/
@Beta
public static ConfigBag newInstanceExtending(final ConfigBag parentBag) {
- return new ConfigBagExtendingParent(parentBag).copy(parentBag);
+ return new ConfigBagExtendingParent(parentBag);
}
/** @see #newInstanceExtending(ConfigBag) */
- public static class ConfigBagExtendingParent extends ConfigBag {
+ private static class ConfigBagExtendingParent extends ConfigBag {
ConfigBag parentBag;
private ConfigBagExtendingParent(ConfigBag parentBag) {
this.parentBag = parentBag;
+ copy(parentBag);
}
@Override
public void markUsed(String key) {