summaryrefslogtreecommitdiff
path: root/java/src/IceGridGUI/Utils.java
diff options
context:
space:
mode:
authorBernard Normier <bernard@zeroc.com>2006-12-19 23:05:58 +0000
committerBernard Normier <bernard@zeroc.com>2006-12-19 23:05:58 +0000
commitd9abf6d53d02b7c41f86327ab21302406a1d2575 (patch)
treeb7b0d4b603a68057c994bfe32ddce3c4ca3876ce /java/src/IceGridGUI/Utils.java
parentAdded Ice.Logger.DateFormat property (diff)
downloadice-d9abf6d53d02b7c41f86327ab21302406a1d2575.tar.bz2
ice-d9abf6d53d02b7c41f86327ab21302406a1d2575.tar.xz
ice-d9abf6d53d02b7c41f86327ab21302406a1d2575.zip
Added support for node variables
Diffstat (limited to 'java/src/IceGridGUI/Utils.java')
-rwxr-xr-xjava/src/IceGridGUI/Utils.java31
1 files changed, 28 insertions, 3 deletions
diff --git a/java/src/IceGridGUI/Utils.java b/java/src/IceGridGUI/Utils.java
index 2ea7cb76587..3f329e9652f 100755
--- a/java/src/IceGridGUI/Utils.java
+++ b/java/src/IceGridGUI/Utils.java
@@ -232,11 +232,20 @@ public class Utils
}
//
- // Set a pre-defined variable
+ // Set a pre-defined variable; returns true if value was updated
//
- public void put(String name, String value)
+ public boolean put(String name, String value)
{
- _predefinedVariables.put(name, value);
+ String oldVal = (String)_predefinedVariables.get(name);
+ if(oldVal == null || !oldVal.equals(value))
+ {
+ _predefinedVariables.put(name, value);
+ return true;
+ }
+ else
+ {
+ return false;
+ }
}
//
@@ -252,6 +261,22 @@ public class Utils
_subResolver = new Resolver(_variables, _predefinedVariables);
}
+ public void reset(Resolver parent)
+ {
+ assert _variables == parent._variables;
+ _predefinedVariables = new java.util.HashMap(parent._predefinedVariables);
+
+ assert _parameters == parent._parameters;
+ if(_parameters == null)
+ {
+ _subResolver = this;
+ }
+ else
+ {
+ _subResolver = new Resolver(_variables, _predefinedVariables);
+ }
+ }
+
//
// The sorted substituted parameters
//