summaryrefslogtreecommitdiff
path: root/java/src/IceGridGUI/LiveDeployment/Editor.java
diff options
context:
space:
mode:
authorBernard Normier <bernard@zeroc.com>2006-05-01 22:10:14 +0000
committerBernard Normier <bernard@zeroc.com>2006-05-01 22:10:14 +0000
commit6d1afe97d80c63e34e5a26a636f690daa5d330cb (patch)
treeaf44668c9d23c3bb1441f4c771f208d456425396 /java/src/IceGridGUI/LiveDeployment/Editor.java
parentFixed W32 compiles for string converters (diff)
downloadice-6d1afe97d80c63e34e5a26a636f690daa5d330cb.tar.bz2
ice-6d1afe97d80c63e34e5a26a636f690daa5d330cb.tar.xz
ice-6d1afe97d80c63e34e5a26a636f690daa5d330cb.zip
The LiveDeployment pane now handles property sets correctly
Diffstat (limited to 'java/src/IceGridGUI/LiveDeployment/Editor.java')
-rwxr-xr-xjava/src/IceGridGUI/LiveDeployment/Editor.java62
1 files changed, 61 insertions, 1 deletions
diff --git a/java/src/IceGridGUI/LiveDeployment/Editor.java b/java/src/IceGridGUI/LiveDeployment/Editor.java
index 957c55c2018..d50f7fc6969 100755
--- a/java/src/IceGridGUI/LiveDeployment/Editor.java
+++ b/java/src/IceGridGUI/LiveDeployment/Editor.java
@@ -9,8 +9,68 @@
package IceGridGUI.LiveDeployment;
import IceGridGUI.*;
+import IceGrid.*;
public abstract class Editor extends EditorBase
-{}
+{
+ //
+ // An expanded property set (i.e. containing other property sets)
+ //
+ static public class ExpandedPropertySet
+ {
+ public ExpandedPropertySet[] references;
+ public java.util.List properties; // list of PropertyDescriptor
+ }
+
+ static public java.util.Vector propertySetToVector(
+ ExpandedPropertySet propertySet,
+ ExpandedPropertySet instancePropertySet, // can be null
+ Utils.Resolver resolver)
+ {
+ java.util.SortedMap toMap = new java.util.TreeMap();
+
+ addSet(propertySet, resolver, toMap);
+ if(instancePropertySet != null)
+ {
+ addSet(instancePropertySet, resolver, toMap);
+ }
+
+ java.util.Vector result = new java.util.Vector(toMap.size());
+ java.util.Iterator p = toMap.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ java.util.Vector row = new java.util.Vector(2);
+ row.add(entry.getKey());
+ row.add(entry.getValue());
+ result.add(row);
+ }
+ return result;
+ }
+
+
+ static private void addSet(ExpandedPropertySet set, Utils.Resolver resolver,
+ java.util.SortedMap toMap)
+ {
+ for(int i = 0; i < set.references.length; ++i)
+ {
+ addSet(set.references[i], resolver, toMap);
+ }
+
+ java.util.Iterator p = set.properties.iterator();
+ while(p.hasNext())
+ {
+ PropertyDescriptor pd = (PropertyDescriptor)p.next();
+ String name = (String)pd.name;
+ String val = (String)pd.value;
+
+ assert resolver != null;
+ name = resolver.substitute(pd.name);
+ val = resolver.substitute(pd.value);
+
+ toMap.put(name, val);
+ }
+ }
+}