summaryrefslogtreecommitdiff
path: root/java/src/IceGridGUI/Application
diff options
context:
space:
mode:
authorBernard Normier <bernard@zeroc.com>2007-02-01 17:09:49 +0000
committerBernard Normier <bernard@zeroc.com>2007-02-01 17:09:49 +0000
commitabada90e3f84dc703b8ddc9efcbed8a946fadead (patch)
tree2c6f9dccd510ea97cb927a7bd635422efaae547a /java/src/IceGridGUI/Application
parentremoving trace message (diff)
downloadice-abada90e3f84dc703b8ddc9efcbed8a946fadead.tar.bz2
ice-abada90e3f84dc703b8ddc9efcbed8a946fadead.tar.xz
ice-abada90e3f84dc703b8ddc9efcbed8a946fadead.zip
Expanded tabs into spaces
Diffstat (limited to 'java/src/IceGridGUI/Application')
-rwxr-xr-xjava/src/IceGridGUI/Application/AbstractServerEditor.java268
-rwxr-xr-xjava/src/IceGridGUI/Application/Adapter.java244
-rwxr-xr-xjava/src/IceGridGUI/Application/AdapterEditor.java968
-rwxr-xr-xjava/src/IceGridGUI/Application/ApplicationEditor.java354
-rwxr-xr-xjava/src/IceGridGUI/Application/Communicator.java1536
-rwxr-xr-xjava/src/IceGridGUI/Application/CommunicatorChildEditor.java206
-rwxr-xr-xjava/src/IceGridGUI/Application/CommunicatorSubEditor.java250
-rwxr-xr-xjava/src/IceGridGUI/Application/DbEnv.java196
-rwxr-xr-xjava/src/IceGridGUI/Application/DbEnvEditor.java242
-rwxr-xr-xjava/src/IceGridGUI/Application/Editable.java98
-rwxr-xr-xjava/src/IceGridGUI/Application/Editor.java262
-rwxr-xr-xjava/src/IceGridGUI/Application/ListTextField.java88
-rwxr-xr-xjava/src/IceGridGUI/Application/ListTreeNode.java268
-rwxr-xr-xjava/src/IceGridGUI/Application/MapField.java358
-rwxr-xr-xjava/src/IceGridGUI/Application/Node.java2064
-rwxr-xr-xjava/src/IceGridGUI/Application/NodeEditor.java364
-rwxr-xr-xjava/src/IceGridGUI/Application/Nodes.java394
-rwxr-xr-xjava/src/IceGridGUI/Application/ParameterValuesField.java248
-rwxr-xr-xjava/src/IceGridGUI/Application/ParametersField.java272
-rwxr-xr-xjava/src/IceGridGUI/Application/PlainServer.java750
-rwxr-xr-xjava/src/IceGridGUI/Application/PlainServerEditor.java42
-rwxr-xr-xjava/src/IceGridGUI/Application/PlainService.java322
-rwxr-xr-xjava/src/IceGridGUI/Application/PlainServiceEditor.java52
-rwxr-xr-xjava/src/IceGridGUI/Application/PropertiesField.java430
-rwxr-xr-xjava/src/IceGridGUI/Application/PropertySet.java252
-rwxr-xr-xjava/src/IceGridGUI/Application/PropertySetEditor.java360
-rwxr-xr-xjava/src/IceGridGUI/Application/PropertySetParent.java6
-rwxr-xr-xjava/src/IceGridGUI/Application/PropertySets.java304
-rwxr-xr-xjava/src/IceGridGUI/Application/ReplicaGroup.java246
-rwxr-xr-xjava/src/IceGridGUI/Application/ReplicaGroupEditor.java708
-rwxr-xr-xjava/src/IceGridGUI/Application/ReplicaGroups.java288
-rwxr-xr-xjava/src/IceGridGUI/Application/Root.java2162
-rwxr-xr-xjava/src/IceGridGUI/Application/ServerInstance.java748
-rwxr-xr-xjava/src/IceGridGUI/Application/ServerInstanceEditor.java316
-rw-r--r--java/src/IceGridGUI/Application/ServerInstancePropertySetEditor.java48
-rwxr-xr-xjava/src/IceGridGUI/Application/ServerSubEditor.java656
-rwxr-xr-xjava/src/IceGridGUI/Application/ServerTemplate.java450
-rwxr-xr-xjava/src/IceGridGUI/Application/ServerTemplateEditor.java40
-rwxr-xr-xjava/src/IceGridGUI/Application/ServerTemplates.java352
-rwxr-xr-xjava/src/IceGridGUI/Application/ServiceInstance.java430
-rwxr-xr-xjava/src/IceGridGUI/Application/ServiceInstanceEditor.java326
-rwxr-xr-xjava/src/IceGridGUI/Application/ServiceSubEditor.java104
-rwxr-xr-xjava/src/IceGridGUI/Application/ServiceTemplate.java300
-rwxr-xr-xjava/src/IceGridGUI/Application/ServiceTemplateEditor.java40
-rwxr-xr-xjava/src/IceGridGUI/Application/ServiceTemplates.java264
-rwxr-xr-xjava/src/IceGridGUI/Application/TemplateEditor.java298
-rwxr-xr-xjava/src/IceGridGUI/Application/Templates.java64
-rwxr-xr-xjava/src/IceGridGUI/Application/TreeNode.java546
-rwxr-xr-xjava/src/IceGridGUI/Application/UpdateFailedException.java6
49 files changed, 9795 insertions, 9795 deletions
diff --git a/java/src/IceGridGUI/Application/AbstractServerEditor.java b/java/src/IceGridGUI/Application/AbstractServerEditor.java
index 2bead3feac9..f46a40838c3 100755
--- a/java/src/IceGridGUI/Application/AbstractServerEditor.java
+++ b/java/src/IceGridGUI/Application/AbstractServerEditor.java
@@ -33,148 +33,148 @@ abstract class AbstractServerEditor extends Editor
protected void buildPropertiesPanel()
{
- super.buildPropertiesPanel();
- _propertiesPanel.setName("Server Properties");
+ super.buildPropertiesPanel();
+ _propertiesPanel.setName("Server Properties");
}
protected boolean applyUpdate(boolean refresh)
{
- Root root = _target.getRoot();
- Server server = (Server)_target;
+ Root root = _target.getRoot();
+ Server server = (Server)_target;
- root.disableSelectionListener();
- try
- {
- if(_target.isEphemeral())
- {
- Node node = (Node)_target.getParent();
- writeDescriptor();
+ root.disableSelectionListener();
+ try
+ {
+ if(_target.isEphemeral())
+ {
+ Node node = (Node)_target.getParent();
+ writeDescriptor();
- _target.destroy(); // just removes the child
+ _target.destroy(); // just removes the child
- try
- {
- if(server instanceof PlainServer)
- {
- node.tryAdd((ServerDescriptor)server.getDescriptor(), true);
- }
- else
- {
- node.tryAdd((ServerInstanceDescriptor)server.getDescriptor(), true);
- }
- }
- catch(UpdateFailedException e)
- {
- //
- // Add back ephemeral child
- //
- try
- {
- node.insertServer(_target, true);
- }
- catch(UpdateFailedException die)
- {
- assert false;
- }
- root.setSelectedNode(_target);
+ try
+ {
+ if(server instanceof PlainServer)
+ {
+ node.tryAdd((ServerDescriptor)server.getDescriptor(), true);
+ }
+ else
+ {
+ node.tryAdd((ServerInstanceDescriptor)server.getDescriptor(), true);
+ }
+ }
+ catch(UpdateFailedException e)
+ {
+ //
+ // Add back ephemeral child
+ //
+ try
+ {
+ node.insertServer(_target, true);
+ }
+ catch(UpdateFailedException die)
+ {
+ assert false;
+ }
+ root.setSelectedNode(_target);
- JOptionPane.showMessageDialog(
- root.getCoordinator().getMainFrame(),
- e.toString(),
- "Apply failed",
- JOptionPane.ERROR_MESSAGE);
- return false;
- }
+ JOptionPane.showMessageDialog(
+ root.getCoordinator().getMainFrame(),
+ e.toString(),
+ "Apply failed",
+ JOptionPane.ERROR_MESSAGE);
+ return false;
+ }
- //
- // Success
- //
- _target = (TreeNode)node.findChildWithDescriptor(server.getDescriptor());
- root.updated();
-
- if(refresh)
- {
- root.setSelectedNode(_target);
- }
-
- }
- else if(isSimpleUpdate())
- {
- writeDescriptor();
- root.updated();
- server.getEditable().markModified();
- }
- else
- {
- //
- // Save to be able to rollback
- //
- Object savedDescriptor = server.saveDescriptor();
- Node node = (Node)_target.getParent();
- writeDescriptor();
-
- node.removeServer(_target);
-
- try
- {
- if(server instanceof PlainServer)
- {
- node.tryAdd((ServerDescriptor)server.getDescriptor(), false);
- }
- else
- {
- node.tryAdd((ServerInstanceDescriptor)server.getDescriptor(), false);
- }
- }
- catch(UpdateFailedException e)
- {
- //
- // Restore
- //
- try
- {
- node.insertServer(_target, true);
- }
- catch(UpdateFailedException die)
- {
- assert false;
- }
- server.restoreDescriptor(savedDescriptor);
- root.setSelectedNode(_target);
-
- JOptionPane.showMessageDialog(
- root.getCoordinator().getMainFrame(),
- e.toString(),
- "Apply failed",
- JOptionPane.ERROR_MESSAGE);
- return false;
- }
-
- //
- // Success
- //
- node.getEditable().removeElement(_target.getId(), server.getEditable(),
- Server.class); // replaced by brand new Server
-
- _target = node.findChildWithDescriptor(server.getDescriptor());
- root.updated();
- if(refresh)
- {
- root.setSelectedNode(_target);
- }
- }
-
- if(refresh)
- {
- root.getCoordinator().getCurrentTab().showNode(_target);
- }
- _applyButton.setEnabled(false);
- _discardButton.setEnabled(false);
- return true;
- }
- finally
- {
- root.enableSelectionListener();
- }
+ //
+ // Success
+ //
+ _target = (TreeNode)node.findChildWithDescriptor(server.getDescriptor());
+ root.updated();
+
+ if(refresh)
+ {
+ root.setSelectedNode(_target);
+ }
+
+ }
+ else if(isSimpleUpdate())
+ {
+ writeDescriptor();
+ root.updated();
+ server.getEditable().markModified();
+ }
+ else
+ {
+ //
+ // Save to be able to rollback
+ //
+ Object savedDescriptor = server.saveDescriptor();
+ Node node = (Node)_target.getParent();
+ writeDescriptor();
+
+ node.removeServer(_target);
+
+ try
+ {
+ if(server instanceof PlainServer)
+ {
+ node.tryAdd((ServerDescriptor)server.getDescriptor(), false);
+ }
+ else
+ {
+ node.tryAdd((ServerInstanceDescriptor)server.getDescriptor(), false);
+ }
+ }
+ catch(UpdateFailedException e)
+ {
+ //
+ // Restore
+ //
+ try
+ {
+ node.insertServer(_target, true);
+ }
+ catch(UpdateFailedException die)
+ {
+ assert false;
+ }
+ server.restoreDescriptor(savedDescriptor);
+ root.setSelectedNode(_target);
+
+ JOptionPane.showMessageDialog(
+ root.getCoordinator().getMainFrame(),
+ e.toString(),
+ "Apply failed",
+ JOptionPane.ERROR_MESSAGE);
+ return false;
+ }
+
+ //
+ // Success
+ //
+ node.getEditable().removeElement(_target.getId(), server.getEditable(),
+ Server.class); // replaced by brand new Server
+
+ _target = node.findChildWithDescriptor(server.getDescriptor());
+ root.updated();
+ if(refresh)
+ {
+ root.setSelectedNode(_target);
+ }
+ }
+
+ if(refresh)
+ {
+ root.getCoordinator().getCurrentTab().showNode(_target);
+ }
+ _applyButton.setEnabled(false);
+ _discardButton.setEnabled(false);
+ return true;
+ }
+ finally
+ {
+ root.enableSelectionListener();
+ }
}
}
diff --git a/java/src/IceGridGUI/Application/Adapter.java b/java/src/IceGridGUI/Application/Adapter.java
index 9c3adc738ef..f12b90d139b 100755
--- a/java/src/IceGridGUI/Application/Adapter.java
+++ b/java/src/IceGridGUI/Application/Adapter.java
@@ -19,19 +19,19 @@ class Adapter extends TreeNode implements DescriptorHolder
{
static public AdapterDescriptor copyDescriptor(AdapterDescriptor d)
{
- return (AdapterDescriptor)d.clone();
+ return (AdapterDescriptor)d.clone();
}
static public java.util.List
copyDescriptors(java.util.List descriptors)
{
- java.util.List copy = new java.util.LinkedList();
- java.util.Iterator p = descriptors.iterator();
- while(p.hasNext())
- {
- copy.add(copyDescriptor((AdapterDescriptor)p.next()));
- }
- return copy;
+ java.util.List copy = new java.util.LinkedList();
+ java.util.Iterator p = descriptors.iterator();
+ while(p.hasNext())
+ {
+ copy.add(copyDescriptor((AdapterDescriptor)p.next()));
+ }
+ return copy;
}
//
@@ -39,194 +39,194 @@ class Adapter extends TreeNode implements DescriptorHolder
//
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
- actions[COPY] = !_ephemeral;
-
- Object clipboard = getCoordinator().getClipboard();
- actions[PASTE] = clipboard != null &&
- (clipboard instanceof AdapterDescriptor
- || clipboard instanceof DbEnvDescriptor);
-
- actions[DELETE] = true;
-
- if(!_ephemeral)
- {
- boolean[] parentActions = ((TreeNode)_parent).getAvailableActions();
- actions[SHOW_VARS] = parentActions[SHOW_VARS];
- actions[SUBSTITUTE_VARS] = parentActions[SUBSTITUTE_VARS];
- }
- return actions;
+ boolean[] actions = new boolean[ACTION_COUNT];
+ actions[COPY] = !_ephemeral;
+
+ Object clipboard = getCoordinator().getClipboard();
+ actions[PASTE] = clipboard != null &&
+ (clipboard instanceof AdapterDescriptor
+ || clipboard instanceof DbEnvDescriptor);
+
+ actions[DELETE] = true;
+
+ if(!_ephemeral)
+ {
+ boolean[] parentActions = ((TreeNode)_parent).getAvailableActions();
+ actions[SHOW_VARS] = parentActions[SHOW_VARS];
+ actions[SUBSTITUTE_VARS] = parentActions[SUBSTITUTE_VARS];
+ }
+ return actions;
}
public void copy()
{
- getCoordinator().setClipboard(copyDescriptor(_descriptor));
- getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
+ getCoordinator().setClipboard(copyDescriptor(_descriptor));
+ getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
}
public void paste()
{
- ((TreeNode)_parent).paste();
+ ((TreeNode)_parent).paste();
}
public Component getTreeCellRendererComponent(
- JTree tree,
- Object value,
- boolean sel,
- boolean expanded,
- boolean leaf,
- int row,
- boolean hasFocus)
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
{
- if(_cellRenderer == null)
- {
- _cellRenderer = new DefaultTreeCellRenderer();
- _cellRenderer.setLeafIcon(Utils.getIcon("/icons/16x16/adapter_inactive.png"));
- }
+ if(_cellRenderer == null)
+ {
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _cellRenderer.setLeafIcon(Utils.getIcon("/icons/16x16/adapter_inactive.png"));
+ }
- return _cellRenderer.getTreeCellRendererComponent(
- tree, value, sel, expanded, leaf, row, hasFocus);
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
}
public Editor getEditor()
{
- if(_editor == null)
- {
- _editor = (AdapterEditor)getRoot().getEditor(AdapterEditor.class, this);
- }
- _editor.show(this);
- return _editor;
+ if(_editor == null)
+ {
+ _editor = (AdapterEditor)getRoot().getEditor(AdapterEditor.class, this);
+ }
+ _editor.show(this);
+ return _editor;
}
protected Editor createEditor()
{
- return new AdapterEditor();
+ return new AdapterEditor();
}
public void destroy()
{
- removeProperty("Ice.OA." + _descriptor.name + ".Endpoints");
- removeProperty("Ice.OA." + _descriptor.name + ".PublishedEndpoints");
+ removeProperty("Ice.OA." + _descriptor.name + ".Endpoints");
+ removeProperty("Ice.OA." + _descriptor.name + ".PublishedEndpoints");
- ((Communicator)_parent).getAdapters().destroyChild(this);
+ ((Communicator)_parent).getAdapters().destroyChild(this);
}
Object getDescriptor()
{
- return _descriptor;
+ return _descriptor;
}
public Object saveDescriptor()
{
- return copyDescriptor(_descriptor);
+ return copyDescriptor(_descriptor);
}
public void restoreDescriptor(Object savedDescriptor)
{
- AdapterDescriptor ad = (AdapterDescriptor)savedDescriptor;
-
- _descriptor.name = ad.name;
- _descriptor.id = ad.id;
- _descriptor.replicaGroupId = ad.replicaGroupId;
- _descriptor.description = ad.description;
- _descriptor.registerProcess = ad.registerProcess;
- _descriptor.serverLifetime = ad.serverLifetime;
- _descriptor.objects = ad.objects;
+ AdapterDescriptor ad = (AdapterDescriptor)savedDescriptor;
+
+ _descriptor.name = ad.name;
+ _descriptor.id = ad.id;
+ _descriptor.replicaGroupId = ad.replicaGroupId;
+ _descriptor.description = ad.description;
+ _descriptor.registerProcess = ad.registerProcess;
+ _descriptor.serverLifetime = ad.serverLifetime;
+ _descriptor.objects = ad.objects;
}
Adapter(Communicator parent, String adapterName, AdapterDescriptor descriptor,
- boolean ephemeral)
+ boolean ephemeral)
{
- super(parent, adapterName);
- _descriptor = descriptor;
- _ephemeral = ephemeral;
+ super(parent, adapterName);
+ _descriptor = descriptor;
+ _ephemeral = ephemeral;
}
void write(XMLWriter writer) throws java.io.IOException
{
- assert false;
+ assert false;
}
void write(XMLWriter writer, java.util.List properties) throws java.io.IOException
{
- if(!_ephemeral)
- {
- java.util.List attributes = new java.util.LinkedList();
- attributes.add(createAttribute("name", _descriptor.name));
- String oaPrefix = "Ice.OA." + _descriptor.name + ".";
-
- attributes.add(createAttribute("endpoints", getProperty(oaPrefix + "Endpoints")));
- attributes.add(createAttribute("id", _descriptor.id));
- if(_descriptor.registerProcess)
- {
- attributes.add(createAttribute("register-process", "true"));
- }
- if(_descriptor.replicaGroupId.length() > 0)
- {
- attributes.add(createAttribute("replica-group", _descriptor.replicaGroupId));
- }
- if(_descriptor.priority != null && _descriptor.priority.length() > 0)
- {
- attributes.add(createAttribute("priority", _descriptor.priority));
- }
- if(!_descriptor.serverLifetime)
- {
- attributes.add(createAttribute("server-lifetime", "false"));
- }
-
- if(_descriptor.description.length() == 0
- && _descriptor.objects.isEmpty()
- && _descriptor.allocatables.isEmpty())
- {
- writer.writeElement("adapter", attributes);
- }
- else
- {
- writer.writeStartTag("adapter", attributes);
-
- if(_descriptor.description.length() > 0)
- {
- writer.writeElement("description", _descriptor.description);
- }
- writeObjects("object", writer, _descriptor.objects, properties);
- writeObjects("allocatable", writer, _descriptor.allocatables, properties);
- writer.writeEndTag("adapter");
- }
- }
+ if(!_ephemeral)
+ {
+ java.util.List attributes = new java.util.LinkedList();
+ attributes.add(createAttribute("name", _descriptor.name));
+ String oaPrefix = "Ice.OA." + _descriptor.name + ".";
+
+ attributes.add(createAttribute("endpoints", getProperty(oaPrefix + "Endpoints")));
+ attributes.add(createAttribute("id", _descriptor.id));
+ if(_descriptor.registerProcess)
+ {
+ attributes.add(createAttribute("register-process", "true"));
+ }
+ if(_descriptor.replicaGroupId.length() > 0)
+ {
+ attributes.add(createAttribute("replica-group", _descriptor.replicaGroupId));
+ }
+ if(_descriptor.priority != null && _descriptor.priority.length() > 0)
+ {
+ attributes.add(createAttribute("priority", _descriptor.priority));
+ }
+ if(!_descriptor.serverLifetime)
+ {
+ attributes.add(createAttribute("server-lifetime", "false"));
+ }
+
+ if(_descriptor.description.length() == 0
+ && _descriptor.objects.isEmpty()
+ && _descriptor.allocatables.isEmpty())
+ {
+ writer.writeElement("adapter", attributes);
+ }
+ else
+ {
+ writer.writeStartTag("adapter", attributes);
+
+ if(_descriptor.description.length() > 0)
+ {
+ writer.writeElement("description", _descriptor.description);
+ }
+ writeObjects("object", writer, _descriptor.objects, properties);
+ writeObjects("allocatable", writer, _descriptor.allocatables, properties);
+ writer.writeEndTag("adapter");
+ }
+ }
}
String getProperty(String property)
{
- return ((Communicator)_parent).getProperty(property);
+ return ((Communicator)_parent).getProperty(property);
}
String lookupPropertyValue(String val)
{
- return ((Communicator)_parent).lookupPropertyValue(val);
+ return ((Communicator)_parent).lookupPropertyValue(val);
}
void setProperty(String property, String newValue)
{
- ((Communicator)_parent).setProperty(property, newValue);
+ ((Communicator)_parent).setProperty(property, newValue);
}
void removeProperty(String property)
{
- ((Communicator)_parent).removeProperty(property);
+ ((Communicator)_parent).removeProperty(property);
}
String getDefaultAdapterId()
{
- return getDefaultAdapterId(_id);
+ return getDefaultAdapterId(_id);
}
String getDefaultAdapterId(String name)
- {
- return (_parent instanceof Service ||
- _parent instanceof ServiceTemplate) ?
- "${server}.${service}." + name: "${server}." + name;
+ {
+ return (_parent instanceof Service ||
+ _parent instanceof ServiceTemplate) ?
+ "${server}.${service}." + name: "${server}." + name;
}
public boolean isEphemeral()
{
- return _ephemeral;
+ return _ephemeral;
}
private final boolean _ephemeral;
diff --git a/java/src/IceGridGUI/Application/AdapterEditor.java b/java/src/IceGridGUI/Application/AdapterEditor.java
index 97c6ba17bd1..5b8f8f85647 100755
--- a/java/src/IceGridGUI/Application/AdapterEditor.java
+++ b/java/src/IceGridGUI/Application/AdapterEditor.java
@@ -35,147 +35,147 @@ class AdapterEditor extends CommunicatorChildEditor
{
AdapterEditor()
{
- _objects = new MapField(this, "Identity", new String[]{"Type", "Property"}, true);
- _allocatables = new MapField(this, "Identity", new String[]{"Type", "Property"}, true);
-
- //
- // Create buttons
- //
-
- //
- // _replicaGroupButton
- //
- Action gotoReplicaGroup = new AbstractAction(
- "", Utils.getIcon("/icons/16x16/goto.png"))
- {
- public void actionPerformed(ActionEvent e)
- {
- Object obj = _replicaGroupId.getSelectedItem();
- Adapter adapter = getAdapter();
-
- ReplicaGroup rg = null;
- if(obj instanceof ReplicaGroup)
- {
- rg = (ReplicaGroup)obj;
- }
- else
- {
- String replicaGroupId =
- Utils.substitute(obj.toString(), adapter.getResolver());
-
- rg = adapter.getRoot().findReplicaGroup(replicaGroupId);
- }
-
- //
- // The button is enabled therefore rg should be != null
- //
- if(rg != null)
- {
- adapter.getRoot().setSelectedNode(rg);
- }
- }
- };
- gotoReplicaGroup.putValue(Action.SHORT_DESCRIPTION,
- "Goto the definition of this replica group");
- _replicaGroupButton = new JButton(gotoReplicaGroup);
-
- Action checkRegisterProcess = new AbstractAction("Register Process")
- {
- public void actionPerformed(ActionEvent e)
- {
- updated();
- }
- };
- _registerProcess = new JCheckBox(checkRegisterProcess);
- _registerProcess.setToolTipText(
- "<html>During activation, create a Process object<br>"
- + "in this adapter and register it with IceGrid<br>"
- + "to enable clean shutdown; you should register<br>"
- + "exactly one Process object per server.</html>");
-
- Action checkServerLifetime =
- new AbstractAction("Server Lifetime")
- {
- public void actionPerformed(ActionEvent e)
- {
- updated();
- }
- };
- _serverLifetime = new JCheckBox(checkServerLifetime);
- _serverLifetime.setToolTipText(
- "<html>Is the adapter lifetime the same as the server<br>" +
+ _objects = new MapField(this, "Identity", new String[]{"Type", "Property"}, true);
+ _allocatables = new MapField(this, "Identity", new String[]{"Type", "Property"}, true);
+
+ //
+ // Create buttons
+ //
+
+ //
+ // _replicaGroupButton
+ //
+ Action gotoReplicaGroup = new AbstractAction(
+ "", Utils.getIcon("/icons/16x16/goto.png"))
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ Object obj = _replicaGroupId.getSelectedItem();
+ Adapter adapter = getAdapter();
+
+ ReplicaGroup rg = null;
+ if(obj instanceof ReplicaGroup)
+ {
+ rg = (ReplicaGroup)obj;
+ }
+ else
+ {
+ String replicaGroupId =
+ Utils.substitute(obj.toString(), adapter.getResolver());
+
+ rg = adapter.getRoot().findReplicaGroup(replicaGroupId);
+ }
+
+ //
+ // The button is enabled therefore rg should be != null
+ //
+ if(rg != null)
+ {
+ adapter.getRoot().setSelectedNode(rg);
+ }
+ }
+ };
+ gotoReplicaGroup.putValue(Action.SHORT_DESCRIPTION,
+ "Goto the definition of this replica group");
+ _replicaGroupButton = new JButton(gotoReplicaGroup);
+
+ Action checkRegisterProcess = new AbstractAction("Register Process")
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ updated();
+ }
+ };
+ _registerProcess = new JCheckBox(checkRegisterProcess);
+ _registerProcess.setToolTipText(
+ "<html>During activation, create a Process object<br>"
+ + "in this adapter and register it with IceGrid<br>"
+ + "to enable clean shutdown; you should register<br>"
+ + "exactly one Process object per server.</html>");
+
+ Action checkServerLifetime =
+ new AbstractAction("Server Lifetime")
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ updated();
+ }
+ };
+ _serverLifetime = new JCheckBox(checkServerLifetime);
+ _serverLifetime.setToolTipText(
+ "<html>Is the adapter lifetime the same as the server<br>" +
"lifetime? The server is considered to be active<br>" +
- "only if all the adapters with this attribute set<br>" +
- "to true are active.</html>");
- //
- // Associate updateListener with various fields
- //
- _name.getDocument().addDocumentListener(
- new DocumentListener()
- {
- public void changedUpdate(DocumentEvent e)
- {
- update();
- }
-
- public void insertUpdate(DocumentEvent e)
- {
- update();
- }
-
- public void removeUpdate(DocumentEvent e)
- {
- update();
- }
-
- private void update()
- {
- updated();
- //
- // Recompute default id
- //
- _defaultAdapterId = getAdapter().getDefaultAdapterId(_name.getText().trim());
- refreshId();
- }
- });
-
- _name.setToolTipText(
- "Identifies this object adapter within an Ice communicator");
-
- _endpoints.getDocument().addDocumentListener(_updateListener);
- _endpoints.setToolTipText(
- "<html>The network interface(s) on which this object adapter receives requests;<br>"
- + "for example:<br>"
- + " tcp (listen on all local interfaces using a random port)<br>"
- + " tcp -h venus.foo.com (listen on just one interface)<br>"
- + " tcp -t 10000 (sets a timeout of 10,000 milliseconds)<br>"
- + " ssl -h venus.foo.com (accepts SSL connections instead of plain TCP)"
- + "</html>");
-
- _description.getDocument().addDocumentListener(_updateListener);
- _description.setToolTipText(
- "An optional description for this object adapter");
-
- JTextField idTextField = (JTextField)
- _id.getEditor().getEditorComponent();
- idTextField.getDocument().addDocumentListener(_updateListener);
- _id.setToolTipText("Identities this object adapter within an IceGrid deployment");
-
- JTextField replicaGroupIdTextField = (JTextField)
- _replicaGroupId.getEditor().getEditorComponent();
- replicaGroupIdTextField.getDocument().addDocumentListener(_updateListener);
- _replicaGroupId.setToolTipText("Select a replica group");
-
- _priority.getDocument().addDocumentListener(_updateListener);
- _priority.setToolTipText("The priority of this adapter; see the Ordered load-balancing "
- + "policy in Replica Groups");
-
-
- JTextField publishedEndpointsTextField = (JTextField)
- _publishedEndpoints.getEditor().getEditorComponent();
- publishedEndpointsTextField.getDocument().addDocumentListener(_updateListener);
- _publishedEndpoints.setToolTipText(
- "Endpoints registered with the IceGrid Registry during the activation of this adapter.");
+ "only if all the adapters with this attribute set<br>" +
+ "to true are active.</html>");
+ //
+ // Associate updateListener with various fields
+ //
+ _name.getDocument().addDocumentListener(
+ new DocumentListener()
+ {
+ public void changedUpdate(DocumentEvent e)
+ {
+ update();
+ }
+
+ public void insertUpdate(DocumentEvent e)
+ {
+ update();
+ }
+
+ public void removeUpdate(DocumentEvent e)
+ {
+ update();
+ }
+
+ private void update()
+ {
+ updated();
+ //
+ // Recompute default id
+ //
+ _defaultAdapterId = getAdapter().getDefaultAdapterId(_name.getText().trim());
+ refreshId();
+ }
+ });
+
+ _name.setToolTipText(
+ "Identifies this object adapter within an Ice communicator");
+
+ _endpoints.getDocument().addDocumentListener(_updateListener);
+ _endpoints.setToolTipText(
+ "<html>The network interface(s) on which this object adapter receives requests;<br>"
+ + "for example:<br>"
+ + " tcp (listen on all local interfaces using a random port)<br>"
+ + " tcp -h venus.foo.com (listen on just one interface)<br>"
+ + " tcp -t 10000 (sets a timeout of 10,000 milliseconds)<br>"
+ + " ssl -h venus.foo.com (accepts SSL connections instead of plain TCP)"
+ + "</html>");
+
+ _description.getDocument().addDocumentListener(_updateListener);
+ _description.setToolTipText(
+ "An optional description for this object adapter");
+
+ JTextField idTextField = (JTextField)
+ _id.getEditor().getEditorComponent();
+ idTextField.getDocument().addDocumentListener(_updateListener);
+ _id.setToolTipText("Identities this object adapter within an IceGrid deployment");
+
+ JTextField replicaGroupIdTextField = (JTextField)
+ _replicaGroupId.getEditor().getEditorComponent();
+ replicaGroupIdTextField.getDocument().addDocumentListener(_updateListener);
+ _replicaGroupId.setToolTipText("Select a replica group");
+
+ _priority.getDocument().addDocumentListener(_updateListener);
+ _priority.setToolTipText("The priority of this adapter; see the Ordered load-balancing "
+ + "policy in Replica Groups");
+
+
+ JTextField publishedEndpointsTextField = (JTextField)
+ _publishedEndpoints.getEditor().getEditorComponent();
+ publishedEndpointsTextField.getDocument().addDocumentListener(_updateListener);
+ _publishedEndpoints.setToolTipText(
+ "Endpoints registered with the IceGrid Registry during the activation of this adapter.");
}
@@ -185,403 +185,403 @@ class AdapterEditor extends CommunicatorChildEditor
void writeDescriptor()
{
- AdapterDescriptor descriptor =
- (AdapterDescriptor)getAdapter().getDescriptor();
- descriptor.name = _name.getText().trim();
- descriptor.description = _description.getText();
- descriptor.id = getIdAsString();
- descriptor.replicaGroupId = getReplicaGroupIdAsString();
- descriptor.priority = _priority.getText().trim();
- descriptor.registerProcess = _registerProcess.isSelected();
- descriptor.serverLifetime = _serverLifetime.isSelected();
- descriptor.objects = mapToObjectDescriptorSeq(_objects.get());
- descriptor.allocatables = mapToObjectDescriptorSeq(_allocatables.get());
- }
+ AdapterDescriptor descriptor =
+ (AdapterDescriptor)getAdapter().getDescriptor();
+ descriptor.name = _name.getText().trim();
+ descriptor.description = _description.getText();
+ descriptor.id = getIdAsString();
+ descriptor.replicaGroupId = getReplicaGroupIdAsString();
+ descriptor.priority = _priority.getText().trim();
+ descriptor.registerProcess = _registerProcess.isSelected();
+ descriptor.serverLifetime = _serverLifetime.isSelected();
+ descriptor.objects = mapToObjectDescriptorSeq(_objects.get());
+ descriptor.allocatables = mapToObjectDescriptorSeq(_allocatables.get());
+ }
boolean isSimpleUpdate()
{
- AdapterDescriptor descriptor =
- (AdapterDescriptor)getAdapter().getDescriptor();
+ AdapterDescriptor descriptor =
+ (AdapterDescriptor)getAdapter().getDescriptor();
- return descriptor.name.equals(_name.getText().trim());
+ return descriptor.name.equals(_name.getText().trim());
}
Communicator.ChildList getChildList()
{
- return ((Communicator)_target.getParent()).getAdapters();
+ return ((Communicator)_target.getParent()).getAdapters();
}
protected void appendProperties(DefaultFormBuilder builder)
{
- builder.append("Adapter Name" );
- builder.append(_name, 3);
- builder.nextLine();
-
- builder.append("Description");
- builder.nextLine();
- builder.append("");
- builder.nextRow(-2);
- CellConstraints cc = new CellConstraints();
- JScrollPane scrollPane = new JScrollPane(_description);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 3));
- builder.nextRow(2);
- builder.nextLine();
-
- builder.append("Adapter ID");
- builder.append(_id, 3);
- builder.nextLine();
-
- builder.append("Replica Group", _replicaGroupId);
- builder.append(_replicaGroupButton);
- builder.nextLine();
-
- builder.append("Priority");
- builder.append(_priority, 3);
- builder.nextLine();
-
- builder.append("Endpoints" );
- builder.append(_endpoints, 3);
- builder.nextLine();
-
- builder.append("Published Endpoints");
- builder.append(_publishedEndpoints, 3);
- builder.nextLine();
-
- builder.append("", _registerProcess);
- builder.nextLine();
- builder.append("", _serverLifetime);
- builder.nextLine();
-
- builder.append("Well-known Objects");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
- builder.nextRow(-6);
- scrollPane = new JScrollPane(_objects);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
- builder.nextRow(6);
- builder.nextLine();
-
- builder.append("Allocatable Objects");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
- builder.nextRow(-6);
- scrollPane = new JScrollPane(_allocatables);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
- builder.nextRow(6);
- builder.nextLine();
+ builder.append("Adapter Name" );
+ builder.append(_name, 3);
+ builder.nextLine();
+
+ builder.append("Description");
+ builder.nextLine();
+ builder.append("");
+ builder.nextRow(-2);
+ CellConstraints cc = new CellConstraints();
+ JScrollPane scrollPane = new JScrollPane(_description);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 3));
+ builder.nextRow(2);
+ builder.nextLine();
+
+ builder.append("Adapter ID");
+ builder.append(_id, 3);
+ builder.nextLine();
+
+ builder.append("Replica Group", _replicaGroupId);
+ builder.append(_replicaGroupButton);
+ builder.nextLine();
+
+ builder.append("Priority");
+ builder.append(_priority, 3);
+ builder.nextLine();
+
+ builder.append("Endpoints" );
+ builder.append(_endpoints, 3);
+ builder.nextLine();
+
+ builder.append("Published Endpoints");
+ builder.append(_publishedEndpoints, 3);
+ builder.nextLine();
+
+ builder.append("", _registerProcess);
+ builder.nextLine();
+ builder.append("", _serverLifetime);
+ builder.nextLine();
+
+ builder.append("Well-known Objects");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+ builder.nextRow(-6);
+ scrollPane = new JScrollPane(_objects);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
+ builder.nextRow(6);
+ builder.nextLine();
+
+ builder.append("Allocatable Objects");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+ builder.nextRow(-6);
+ scrollPane = new JScrollPane(_allocatables);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
+ builder.nextRow(6);
+ builder.nextLine();
}
protected void buildPropertiesPanel()
{
- super.buildPropertiesPanel();
- _propertiesPanel.setName("Adapter Properties");
+ super.buildPropertiesPanel();
+ _propertiesPanel.setName("Adapter Properties");
}
void postUpdate()
{
- //
- // Change enclosing properties after successful update
- //
- String name = _name.getText().trim();
- Adapter adapter = getAdapter();
- if(!name.equals(_oldName))
- {
- adapter.removeProperty("Ice.OA." + _oldName + ".Endpoints");
- adapter.removeProperty("Ice.OA." + _oldName + ".PublishedEndpoints");
- _oldName = name;
- }
-
- adapter.setProperty("Ice.OA." + name + ".Endpoints", _endpoints.getText().trim());
-
- Object published = _publishedEndpoints.getSelectedItem();
- if(published == PUBLISH_ACTUAL)
- {
- adapter.removeProperty("Ice.OA." + name + ".PublishedEndpoints");
- }
- else
- {
- adapter.setProperty("Ice.OA." + name + ".PublishedEndpoints",
- published.toString().trim());
-
- }
-
- //
- // Set all objects and allocatables properties
- //
- java.util.Map map = _objects.get();
- java.util.Iterator p = map.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- String key = (String)entry.getKey();
- String[] value = (String[]) entry.getValue();
- if(!value[1].equals(""))
- {
- adapter.setProperty(value[1], key);
- }
- }
-
- map = _allocatables.get();
- p = map.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- String key = (String)entry.getKey();
- String[] value = (String[]) entry.getValue();
- if(!value[1].equals(""))
- {
- adapter.setProperty(value[1], key);
- }
- }
+ //
+ // Change enclosing properties after successful update
+ //
+ String name = _name.getText().trim();
+ Adapter adapter = getAdapter();
+ if(!name.equals(_oldName))
+ {
+ adapter.removeProperty("Ice.OA." + _oldName + ".Endpoints");
+ adapter.removeProperty("Ice.OA." + _oldName + ".PublishedEndpoints");
+ _oldName = name;
+ }
+
+ adapter.setProperty("Ice.OA." + name + ".Endpoints", _endpoints.getText().trim());
+
+ Object published = _publishedEndpoints.getSelectedItem();
+ if(published == PUBLISH_ACTUAL)
+ {
+ adapter.removeProperty("Ice.OA." + name + ".PublishedEndpoints");
+ }
+ else
+ {
+ adapter.setProperty("Ice.OA." + name + ".PublishedEndpoints",
+ published.toString().trim());
+
+ }
+
+ //
+ // Set all objects and allocatables properties
+ //
+ java.util.Map map = _objects.get();
+ java.util.Iterator p = map.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ String key = (String)entry.getKey();
+ String[] value = (String[]) entry.getValue();
+ if(!value[1].equals(""))
+ {
+ adapter.setProperty(value[1], key);
+ }
+ }
+
+ map = _allocatables.get();
+ p = map.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ String key = (String)entry.getKey();
+ String[] value = (String[]) entry.getValue();
+ if(!value[1].equals(""))
+ {
+ adapter.setProperty(value[1], key);
+ }
+ }
}
private void setId(String id)
{
- if(id.equals(_defaultAdapterId))
- {
- _id.setSelectedItem(DEFAULT_ADAPTER_ID);
- }
- else
- {
- _id.setSelectedItem(id);
- }
+ if(id.equals(_defaultAdapterId))
+ {
+ _id.setSelectedItem(DEFAULT_ADAPTER_ID);
+ }
+ else
+ {
+ _id.setSelectedItem(id);
+ }
}
private void refreshId()
{
- Object id = _id.getSelectedItem();
- _id.setModel(new DefaultComboBoxModel(new Object[]
- {DEFAULT_ADAPTER_ID}));
- _id.setSelectedItem(id);
+ Object id = _id.getSelectedItem();
+ _id.setModel(new DefaultComboBoxModel(new Object[]
+ {DEFAULT_ADAPTER_ID}));
+ _id.setSelectedItem(id);
}
private String getIdAsString()
{
- Object obj = _id.getSelectedItem();
- return obj.toString().trim();
+ Object obj = _id.getSelectedItem();
+ return obj.toString().trim();
}
private void setReplicaGroupId(String replicaGroupId)
{
- if(replicaGroupId.equals(""))
- {
- _replicaGroupId.setSelectedItem(NOT_REPLICATED);
- }
- else
- {
- ReplicaGroups replicaGroups =
- getAdapter().getRoot().getReplicaGroups();
-
- ReplicaGroup replicaGroup =
- (ReplicaGroup)replicaGroups.findChild(replicaGroupId);
-
- if(replicaGroup != null)
- {
- _replicaGroupId.setSelectedItem(replicaGroup);
- }
- else
- {
- _replicaGroupId.setSelectedItem(replicaGroupId);
- }
- }
+ if(replicaGroupId.equals(""))
+ {
+ _replicaGroupId.setSelectedItem(NOT_REPLICATED);
+ }
+ else
+ {
+ ReplicaGroups replicaGroups =
+ getAdapter().getRoot().getReplicaGroups();
+
+ ReplicaGroup replicaGroup =
+ (ReplicaGroup)replicaGroups.findChild(replicaGroupId);
+
+ if(replicaGroup != null)
+ {
+ _replicaGroupId.setSelectedItem(replicaGroup);
+ }
+ else
+ {
+ _replicaGroupId.setSelectedItem(replicaGroupId);
+ }
+ }
}
private String getReplicaGroupIdAsString()
{
- Object obj = _replicaGroupId.getSelectedItem();
- if(obj == NOT_REPLICATED)
- {
- return "";
- }
- else
- {
- return obj.toString().trim();
- }
+ Object obj = _replicaGroupId.getSelectedItem();
+ if(obj == NOT_REPLICATED)
+ {
+ return "";
+ }
+ else
+ {
+ return obj.toString().trim();
+ }
}
protected boolean validate()
{
- return check(new String[]{
- "Adapter Name", _name.getText().trim(),
- "Adapter ID", getIdAsString(),
- "Endpoints", _endpoints.getText().trim()
- });
+ return check(new String[]{
+ "Adapter Name", _name.getText().trim(),
+ "Adapter ID", getIdAsString(),
+ "Endpoints", _endpoints.getText().trim()
+ });
}
void show(Adapter adapter)
{
- detectUpdates(false);
- _target = adapter;
-
- AdapterDescriptor descriptor = (AdapterDescriptor)adapter.getDescriptor();
-
- final Utils.Resolver resolver = adapter.getCoordinator().substitute() ?
- adapter.getResolver() : null;
-
- boolean isEditable = resolver == null;
-
- _oldName = descriptor.name;
-
- _name.setText(Utils.substitute(descriptor.name, resolver));
- _name.setEditable(isEditable);
-
- String oaPrefix = "Ice.OA." + descriptor.name + ".";
-
- _description.setText(
- Utils.substitute(descriptor.description, resolver));
- _description.setEditable(isEditable);
- _description.setOpaque(isEditable);
-
- //
- // Need to make control editable & enabled before changing it
- //
- _id.setEnabled(true);
- _id.setEditable(true);
- _defaultAdapterId = adapter.getDefaultAdapterId();
- refreshId();
- if(descriptor.id == null)
- {
- descriptor.id = _defaultAdapterId;
- }
-
- setId(Utils.substitute(descriptor.id, resolver));
- _id.setEnabled(isEditable);
- _id.setEditable(isEditable);
-
- _replicaGroupId.setEnabled(true);
- _replicaGroupId.setEditable(true);
-
- final ReplicaGroups replicaGroups =
- adapter.getRoot().getReplicaGroups();
- _replicaGroupId.setModel(replicaGroups.createComboBoxModel(NOT_REPLICATED));
-
- _replicaGroupId.addItemListener(new ItemListener()
- {
- public void itemStateChanged(ItemEvent e)
- {
- if(e.getStateChange() == ItemEvent.SELECTED)
- {
- Object item = e.getItem();
- boolean enabled = (item instanceof ReplicaGroup);
- if(!enabled && item != NOT_REPLICATED)
- {
- if(resolver != null)
- {
- String replicaGroupId =
- resolver.substitute(item.toString().trim());
- enabled = (replicaGroups.findChild(replicaGroupId) != null);
- }
- }
- _replicaGroupButton.setEnabled(enabled);
- }
- }
- });
-
- setReplicaGroupId(Utils.substitute(descriptor.replicaGroupId, resolver));
-
- _replicaGroupId.setEnabled(isEditable);
- _replicaGroupId.setEditable(isEditable);
-
- _priority.setText(Utils.substitute(descriptor.priority, resolver));
- _priority.setEditable(isEditable);
-
- if(adapter.isEphemeral())
- {
- _endpoints.setText("default");
- }
- else
- {
- _endpoints.setText(Utils.substitute(adapter.getProperty(oaPrefix + "Endpoints"), resolver));
- }
- _endpoints.setEditable(isEditable);
-
- _publishedEndpoints.setEnabled(true);
- _publishedEndpoints.setEditable(true);
- String published =
- Utils.substitute(adapter.getProperty(oaPrefix + "PublishedEndpoints"), resolver);
- if(published == null || published.equals(""))
- {
- _publishedEndpoints.setSelectedItem(PUBLISH_ACTUAL);
- }
- else
- {
- _publishedEndpoints.setSelectedItem(published);
- }
- _publishedEndpoints.setEnabled(isEditable);
- _publishedEndpoints.setEditable(isEditable);
-
- //
- // Objects
- //
- _objects.set(objectDescriptorSeqToMap(descriptor.objects), resolver, isEditable);
- _allocatables.set(objectDescriptorSeqToMap(descriptor.allocatables), resolver, isEditable);
-
- _registerProcess.setSelected(descriptor.registerProcess);
- _registerProcess.setEnabled(isEditable);
-
- _serverLifetime.setSelected(descriptor.serverLifetime);
- _serverLifetime.setEnabled(isEditable);
-
- _applyButton.setEnabled(adapter.isEphemeral());
- _discardButton.setEnabled(adapter.isEphemeral());
- detectUpdates(true);
+ detectUpdates(false);
+ _target = adapter;
+
+ AdapterDescriptor descriptor = (AdapterDescriptor)adapter.getDescriptor();
+
+ final Utils.Resolver resolver = adapter.getCoordinator().substitute() ?
+ adapter.getResolver() : null;
+
+ boolean isEditable = resolver == null;
+
+ _oldName = descriptor.name;
+
+ _name.setText(Utils.substitute(descriptor.name, resolver));
+ _name.setEditable(isEditable);
+
+ String oaPrefix = "Ice.OA." + descriptor.name + ".";
+
+ _description.setText(
+ Utils.substitute(descriptor.description, resolver));
+ _description.setEditable(isEditable);
+ _description.setOpaque(isEditable);
+
+ //
+ // Need to make control editable & enabled before changing it
+ //
+ _id.setEnabled(true);
+ _id.setEditable(true);
+ _defaultAdapterId = adapter.getDefaultAdapterId();
+ refreshId();
+ if(descriptor.id == null)
+ {
+ descriptor.id = _defaultAdapterId;
+ }
+
+ setId(Utils.substitute(descriptor.id, resolver));
+ _id.setEnabled(isEditable);
+ _id.setEditable(isEditable);
+
+ _replicaGroupId.setEnabled(true);
+ _replicaGroupId.setEditable(true);
+
+ final ReplicaGroups replicaGroups =
+ adapter.getRoot().getReplicaGroups();
+ _replicaGroupId.setModel(replicaGroups.createComboBoxModel(NOT_REPLICATED));
+
+ _replicaGroupId.addItemListener(new ItemListener()
+ {
+ public void itemStateChanged(ItemEvent e)
+ {
+ if(e.getStateChange() == ItemEvent.SELECTED)
+ {
+ Object item = e.getItem();
+ boolean enabled = (item instanceof ReplicaGroup);
+ if(!enabled && item != NOT_REPLICATED)
+ {
+ if(resolver != null)
+ {
+ String replicaGroupId =
+ resolver.substitute(item.toString().trim());
+ enabled = (replicaGroups.findChild(replicaGroupId) != null);
+ }
+ }
+ _replicaGroupButton.setEnabled(enabled);
+ }
+ }
+ });
+
+ setReplicaGroupId(Utils.substitute(descriptor.replicaGroupId, resolver));
+
+ _replicaGroupId.setEnabled(isEditable);
+ _replicaGroupId.setEditable(isEditable);
+
+ _priority.setText(Utils.substitute(descriptor.priority, resolver));
+ _priority.setEditable(isEditable);
+
+ if(adapter.isEphemeral())
+ {
+ _endpoints.setText("default");
+ }
+ else
+ {
+ _endpoints.setText(Utils.substitute(adapter.getProperty(oaPrefix + "Endpoints"), resolver));
+ }
+ _endpoints.setEditable(isEditable);
+
+ _publishedEndpoints.setEnabled(true);
+ _publishedEndpoints.setEditable(true);
+ String published =
+ Utils.substitute(adapter.getProperty(oaPrefix + "PublishedEndpoints"), resolver);
+ if(published == null || published.equals(""))
+ {
+ _publishedEndpoints.setSelectedItem(PUBLISH_ACTUAL);
+ }
+ else
+ {
+ _publishedEndpoints.setSelectedItem(published);
+ }
+ _publishedEndpoints.setEnabled(isEditable);
+ _publishedEndpoints.setEditable(isEditable);
+
+ //
+ // Objects
+ //
+ _objects.set(objectDescriptorSeqToMap(descriptor.objects), resolver, isEditable);
+ _allocatables.set(objectDescriptorSeqToMap(descriptor.allocatables), resolver, isEditable);
+
+ _registerProcess.setSelected(descriptor.registerProcess);
+ _registerProcess.setEnabled(isEditable);
+
+ _serverLifetime.setSelected(descriptor.serverLifetime);
+ _serverLifetime.setEnabled(isEditable);
+
+ _applyButton.setEnabled(adapter.isEphemeral());
+ _discardButton.setEnabled(adapter.isEphemeral());
+ detectUpdates(true);
}
Adapter getAdapter()
{
- return (Adapter)_target;
+ return (Adapter)_target;
}
private java.util.Map objectDescriptorSeqToMap(java.util.List objects)
{
- java.util.Map result = new java.util.TreeMap();
- java.util.Iterator p = objects.iterator();
- while(p.hasNext())
- {
- ObjectDescriptor od = (ObjectDescriptor)p.next();
- String k = Ice.Util.identityToString(od.id);
-
- result.put(k, new String[]{od.type, getAdapter().lookupPropertyValue(k)});
- }
- return result;
+ java.util.Map result = new java.util.TreeMap();
+ java.util.Iterator p = objects.iterator();
+ while(p.hasNext())
+ {
+ ObjectDescriptor od = (ObjectDescriptor)p.next();
+ String k = Ice.Util.identityToString(od.id);
+
+ result.put(k, new String[]{od.type, getAdapter().lookupPropertyValue(k)});
+ }
+ return result;
}
private java.util.LinkedList mapToObjectDescriptorSeq(java.util.Map map)
{
- java.util.LinkedList result = new java.util.LinkedList();
- java.util.Iterator p = map.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- Ice.Identity id =
- Ice.Util.stringToIdentity((String)entry.getKey());
- String[] val = (String[])entry.getValue();
- result.add(new ObjectDescriptor(id, val[0]));
- }
- return result;
+ java.util.LinkedList result = new java.util.LinkedList();
+ java.util.Iterator p = map.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ Ice.Identity id =
+ Ice.Util.stringToIdentity((String)entry.getKey());
+ String[] val = (String[])entry.getValue();
+ result.add(new ObjectDescriptor(id, val[0]));
+ }
+ return result;
}
private String _defaultAdapterId = "";
private final Object DEFAULT_ADAPTER_ID = new Object()
- {
- public String toString()
- {
- return _defaultAdapterId;
- }
- };
+ {
+ public String toString()
+ {
+ return _defaultAdapterId;
+ }
+ };
private String _oldName;
@@ -596,7 +596,7 @@ class AdapterEditor extends CommunicatorChildEditor
private JTextField _endpoints = new JTextField(20);
private JComboBox _publishedEndpoints = new JComboBox(
- new Object[]{PUBLISH_ACTUAL});
+ new Object[]{PUBLISH_ACTUAL});
private JTextField _currentStatus = new JTextField(20);
private JTextField _currentEndpoints = new JTextField(20);
@@ -608,18 +608,18 @@ class AdapterEditor extends CommunicatorChildEditor
private MapField _allocatables;
static private final Object PUBLISH_ACTUAL = new Object()
- {
- public String toString()
- {
- return "Actual endpoints";
- }
- };
+ {
+ public String toString()
+ {
+ return "Actual endpoints";
+ }
+ };
static private final Object NOT_REPLICATED = new Object()
- {
- public String toString()
- {
- return "Does not belong to a replica group";
- }
- };
+ {
+ public String toString()
+ {
+ return "Does not belong to a replica group";
+ }
+ };
}
diff --git a/java/src/IceGridGUI/Application/ApplicationEditor.java b/java/src/IceGridGUI/Application/ApplicationEditor.java
index 6a7c9858767..006cbad1270 100755
--- a/java/src/IceGridGUI/Application/ApplicationEditor.java
+++ b/java/src/IceGridGUI/Application/ApplicationEditor.java
@@ -30,231 +30,231 @@ class ApplicationEditor extends Editor
{
protected boolean applyUpdate(boolean refresh)
{
- Root root = (Root)_target;
- MainPane mainPane = _target.getCoordinator().getMainPane();
+ Root root = (Root)_target;
+ MainPane mainPane = _target.getCoordinator().getMainPane();
- root.disableSelectionListener();
- try
- {
- if(isSimpleUpdate())
- {
- writeDescriptor();
- root.updated();
- root.getEditable().markModified();
- }
- else
- {
- //
- // Save to be able to rollback
- //
- ApplicationDescriptor savedDescriptor = root.saveDescriptor();
- writeDescriptor();
- try
- {
- root.rebuild();
- }
- catch(UpdateFailedException e)
- {
- root.restoreDescriptor(savedDescriptor);
- JOptionPane.showMessageDialog(
- root.getCoordinator().getMainFrame(),
- e.toString(),
- "Apply failed",
- JOptionPane.ERROR_MESSAGE);
- return false;
- }
- //
- // Success
- //
- root.updated();
- root.getEditable().markModified();
-
- if(!savedDescriptor.name.equals(root.getId()))
- {
- mainPane.resetTitle(root);
- root.getTreeModel().nodeChanged(root);
- }
- }
-
- _applyButton.setEnabled(false);
- _discardButton.setEnabled(false);
- return true;
- }
- finally
- {
- root.enableSelectionListener();
- }
+ root.disableSelectionListener();
+ try
+ {
+ if(isSimpleUpdate())
+ {
+ writeDescriptor();
+ root.updated();
+ root.getEditable().markModified();
+ }
+ else
+ {
+ //
+ // Save to be able to rollback
+ //
+ ApplicationDescriptor savedDescriptor = root.saveDescriptor();
+ writeDescriptor();
+ try
+ {
+ root.rebuild();
+ }
+ catch(UpdateFailedException e)
+ {
+ root.restoreDescriptor(savedDescriptor);
+ JOptionPane.showMessageDialog(
+ root.getCoordinator().getMainFrame(),
+ e.toString(),
+ "Apply failed",
+ JOptionPane.ERROR_MESSAGE);
+ return false;
+ }
+ //
+ // Success
+ //
+ root.updated();
+ root.getEditable().markModified();
+
+ if(!savedDescriptor.name.equals(root.getId()))
+ {
+ mainPane.resetTitle(root);
+ root.getTreeModel().nodeChanged(root);
+ }
+ }
+
+ _applyButton.setEnabled(false);
+ _discardButton.setEnabled(false);
+ return true;
+ }
+ finally
+ {
+ root.enableSelectionListener();
+ }
}
ApplicationEditor()
{
- _name.getDocument().addDocumentListener(_updateListener);
- _description.getDocument().addDocumentListener(_updateListener);
-
- //
- // Variables
- //
- _variables = new MapField(this, "Name", "Value", false);
+ _name.getDocument().addDocumentListener(_updateListener);
+ _description.getDocument().addDocumentListener(_updateListener);
+
+ //
+ // Variables
+ //
+ _variables = new MapField(this, "Name", "Value", false);
- //
- // Distrib
- //
- _distrib = new JComboBox(new Object[]{NO_DISTRIB, DEFAULT_DISTRIB});
- _distrib.setEditable(true);
- _distrib.setToolTipText("The proxy to the IcePatch2 server holding your files");
+ //
+ // Distrib
+ //
+ _distrib = new JComboBox(new Object[]{NO_DISTRIB, DEFAULT_DISTRIB});
+ _distrib.setEditable(true);
+ _distrib.setToolTipText("The proxy to the IcePatch2 server holding your files");
- JTextField distribTextField = (JTextField)
- _distrib.getEditor().getEditorComponent();
- distribTextField.getDocument().addDocumentListener(
- _updateListener);
+ JTextField distribTextField = (JTextField)
+ _distrib.getEditor().getEditorComponent();
+ distribTextField.getDocument().addDocumentListener(
+ _updateListener);
- _distribDirs.getDocument().addDocumentListener(_updateListener);
- _distribDirs.setToolTipText(
- "<html>Include only these directories when patching.<br>"
- + "Use whitespace as separator; use double-quotes around directories containing whitespaces</html>");
+ _distribDirs.getDocument().addDocumentListener(_updateListener);
+ _distribDirs.setToolTipText(
+ "<html>Include only these directories when patching.<br>"
+ + "Use whitespace as separator; use double-quotes around directories containing whitespaces</html>");
}
protected void appendProperties(DefaultFormBuilder builder)
{
- builder.append("Name");
- builder.append(_name, 3);
+ builder.append("Name");
+ builder.append(_name, 3);
- builder.append("Description");
- builder.nextLine();
- builder.append("");
- builder.nextRow(-2);
- CellConstraints cc = new CellConstraints();
- JScrollPane scrollPane = new JScrollPane(_description);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 3));
- builder.nextRow(2);
- builder.nextLine();
+ builder.append("Description");
+ builder.nextLine();
+ builder.append("");
+ builder.nextRow(-2);
+ CellConstraints cc = new CellConstraints();
+ JScrollPane scrollPane = new JScrollPane(_description);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 3));
+ builder.nextRow(2);
+ builder.nextLine();
- builder.append("Variables");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
- builder.nextRow(-6);
- scrollPane = new JScrollPane(_variables);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
- builder.nextRow(6);
- builder.nextLine();
+ builder.append("Variables");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+ builder.nextRow(-6);
+ scrollPane = new JScrollPane(_variables);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
+ builder.nextRow(6);
+ builder.nextLine();
- JComponent c = builder.appendSeparator("Distribution");
- c.setToolTipText("Files shared by all servers in your application");
- builder.append("IcePatch2 Proxy");
- builder.append(_distrib, 3);
- builder.nextLine();
- builder.append("Directories");
- builder.append(_distribDirs, 3);
- builder.nextLine();
+ JComponent c = builder.appendSeparator("Distribution");
+ c.setToolTipText("Files shared by all servers in your application");
+ builder.append("IcePatch2 Proxy");
+ builder.append(_distrib, 3);
+ builder.nextLine();
+ builder.append("Directories");
+ builder.append(_distribDirs, 3);
+ builder.nextLine();
}
protected void buildPropertiesPanel()
{
- super.buildPropertiesPanel();
- _propertiesPanel.setName("Application Properties");
+ super.buildPropertiesPanel();
+ _propertiesPanel.setName("Application Properties");
}
boolean isSimpleUpdate()
{
- ApplicationDescriptor descriptor = (ApplicationDescriptor)_target.getDescriptor();
- return descriptor.name.equals(_name.getText().trim())
- && _variables.get().equals(descriptor.variables);
+ ApplicationDescriptor descriptor = (ApplicationDescriptor)_target.getDescriptor();
+ return descriptor.name.equals(_name.getText().trim())
+ && _variables.get().equals(descriptor.variables);
}
void writeDescriptor()
{
- ApplicationDescriptor descriptor = (ApplicationDescriptor)_target.getDescriptor();
- descriptor.name = _name.getText().trim();
- descriptor.variables = _variables.get();
- descriptor.description = _description.getText();
+ ApplicationDescriptor descriptor = (ApplicationDescriptor)_target.getDescriptor();
+ descriptor.name = _name.getText().trim();
+ descriptor.variables = _variables.get();
+ descriptor.description = _description.getText();
- if(_distrib.getSelectedItem() == NO_DISTRIB)
- {
- descriptor.distrib.icepatch = "";
- }
- else
- {
- descriptor.distrib.icepatch = _distrib.getSelectedItem().toString().trim();
- }
- descriptor.distrib.directories = _distribDirs.getList();
- }
+ if(_distrib.getSelectedItem() == NO_DISTRIB)
+ {
+ descriptor.distrib.icepatch = "";
+ }
+ else
+ {
+ descriptor.distrib.icepatch = _distrib.getSelectedItem().toString().trim();
+ }
+ descriptor.distrib.directories = _distribDirs.getList();
+ }
protected boolean validate()
{
- return check(new String[]{"Name", _name.getText().trim()});
+ return check(new String[]{"Name", _name.getText().trim()});
}
void show(Root root)
{
- detectUpdates(false);
- _target = root;
-
- Utils.Resolver resolver = getDetailResolver();
- boolean isEditable = (resolver == null);
+ detectUpdates(false);
+ _target = root;
+
+ Utils.Resolver resolver = getDetailResolver();
+ boolean isEditable = (resolver == null);
- ApplicationDescriptor descriptor =
- (ApplicationDescriptor)root.getDescriptor();
+ ApplicationDescriptor descriptor =
+ (ApplicationDescriptor)root.getDescriptor();
- _name.setText(descriptor.name);
- _name.setEditable(!root.isLive() && isEditable);
+ _name.setText(descriptor.name);
+ _name.setEditable(!root.isLive() && isEditable);
- _description.setText(
- Utils.substitute(descriptor.description, resolver));
- _description.setEditable(isEditable);
- _description.setOpaque(isEditable);
- _description.setToolTipText("An optional description for this application");
-
- _variables.set(descriptor.variables, resolver, isEditable);
-
- _distrib.setEnabled(true);
- _distrib.setEditable(true);
- String icepatch =
- Utils.substitute(descriptor.distrib.icepatch, resolver);
- if(icepatch.equals(""))
- {
- _distrib.setSelectedItem(NO_DISTRIB);
- }
- else
- {
- _distrib.setSelectedItem(icepatch);
- }
- _distrib.setEnabled(isEditable);
- _distrib.setEditable(isEditable);
+ _description.setText(
+ Utils.substitute(descriptor.description, resolver));
+ _description.setEditable(isEditable);
+ _description.setOpaque(isEditable);
+ _description.setToolTipText("An optional description for this application");
+
+ _variables.set(descriptor.variables, resolver, isEditable);
+
+ _distrib.setEnabled(true);
+ _distrib.setEditable(true);
+ String icepatch =
+ Utils.substitute(descriptor.distrib.icepatch, resolver);
+ if(icepatch.equals(""))
+ {
+ _distrib.setSelectedItem(NO_DISTRIB);
+ }
+ else
+ {
+ _distrib.setSelectedItem(icepatch);
+ }
+ _distrib.setEnabled(isEditable);
+ _distrib.setEditable(isEditable);
- _distribDirs.setList(descriptor.distrib.directories, resolver);
- _distribDirs.setEditable(isEditable);
+ _distribDirs.setList(descriptor.distrib.directories, resolver);
+ _distribDirs.setEditable(isEditable);
- _applyButton.setEnabled(false);
- _discardButton.setEnabled(false);
- detectUpdates(true);
+ _applyButton.setEnabled(false);
+ _discardButton.setEnabled(false);
+ detectUpdates(true);
}
Utils.Resolver getDetailResolver()
{
- if(_target.getCoordinator().substitute())
- {
- return _target.getResolver();
- }
- else
- {
- return null;
- }
+ if(_target.getCoordinator().substitute())
+ {
+ return _target.getResolver();
+ }
+ else
+ {
+ return null;
+ }
}
static private final Object NO_DISTRIB = new Object()
- {
- public String toString()
- {
- return "None selected";
- }
- };
+ {
+ public String toString()
+ {
+ return "None selected";
+ }
+ };
static private final String DEFAULT_DISTRIB = "${application}.IcePatch2/server";
private JTextField _name = new JTextField(20);
diff --git a/java/src/IceGridGUI/Application/Communicator.java b/java/src/IceGridGUI/Application/Communicator.java
index 4669e7385e4..dd13244ebf3 100755
--- a/java/src/IceGridGUI/Application/Communicator.java
+++ b/java/src/IceGridGUI/Application/Communicator.java
@@ -23,114 +23,114 @@ abstract class Communicator extends TreeNode implements DescriptorHolder
{
public Enumeration children()
{
- return new Enumeration()
- {
- public boolean hasMoreElements()
- {
- if(_p.hasNext())
- {
- return true;
- }
-
- while(++_index < _childListArray.length)
- {
- _p = _childListArray[_index].iterator();
- if(_p.hasNext())
- {
- return true;
- }
- }
- return false;
- }
-
- public Object nextElement()
- {
- try
- {
- return _p.next();
- }
- catch(java.util.NoSuchElementException nse)
- {
- if(hasMoreElements())
- {
- return _p.next();
- }
- else
- {
- throw nse;
- }
- }
- }
-
- private int _index = 0;
- private java.util.Iterator _p = _childListArray[0].iterator();
- };
+ return new Enumeration()
+ {
+ public boolean hasMoreElements()
+ {
+ if(_p.hasNext())
+ {
+ return true;
+ }
+
+ while(++_index < _childListArray.length)
+ {
+ _p = _childListArray[_index].iterator();
+ if(_p.hasNext())
+ {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ public Object nextElement()
+ {
+ try
+ {
+ return _p.next();
+ }
+ catch(java.util.NoSuchElementException nse)
+ {
+ if(hasMoreElements())
+ {
+ return _p.next();
+ }
+ else
+ {
+ throw nse;
+ }
+ }
+ }
+
+ private int _index = 0;
+ private java.util.Iterator _p = _childListArray[0].iterator();
+ };
}
public boolean getAllowsChildren()
{
- return true;
+ return true;
}
public javax.swing.tree.TreeNode getChildAt(int childIndex)
{
- if(childIndex < 0)
- {
- throw new ArrayIndexOutOfBoundsException(childIndex);
- }
- int offset = 0;
- for(int i = 0; i < _childListArray.length; ++i)
- {
- if(childIndex < offset + _childListArray[i].size())
- {
- return _childListArray[i].get(childIndex - offset);
- }
- else
- {
- offset += _childListArray[i].size();
- }
- }
- throw new ArrayIndexOutOfBoundsException(childIndex);
+ if(childIndex < 0)
+ {
+ throw new ArrayIndexOutOfBoundsException(childIndex);
+ }
+ int offset = 0;
+ for(int i = 0; i < _childListArray.length; ++i)
+ {
+ if(childIndex < offset + _childListArray[i].size())
+ {
+ return _childListArray[i].get(childIndex - offset);
+ }
+ else
+ {
+ offset += _childListArray[i].size();
+ }
+ }
+ throw new ArrayIndexOutOfBoundsException(childIndex);
}
public int getChildCount()
{
- int result = 0;
- for(int i = 0; i < _childListArray.length; ++i)
- {
- result += _childListArray[i].size();
- }
- return result;
+ int result = 0;
+ for(int i = 0; i < _childListArray.length; ++i)
+ {
+ result += _childListArray[i].size();
+ }
+ return result;
}
public int getIndex(javax.swing.tree.TreeNode node)
{
- int offset = 0;
- for(int i = 0; i < _childListArray.length; ++i)
- {
- int index = _childListArray[i].indexOf(node);
- if(index == -1)
- {
- offset += _childListArray[i].size();
- }
- else
- {
- return offset + index;
- }
- }
- return -1;
+ int offset = 0;
+ for(int i = 0; i < _childListArray.length; ++i)
+ {
+ int index = _childListArray[i].indexOf(node);
+ if(index == -1)
+ {
+ offset += _childListArray[i].size();
+ }
+ else
+ {
+ return offset + index;
+ }
+ }
+ return -1;
}
public boolean isLeaf()
{
- for(int i = 0; i < _childListArray.length; ++i)
- {
- if(!_childListArray[i].isEmpty())
- {
- return false;
- }
- }
- return true;
+ for(int i = 0; i < _childListArray.length; ++i)
+ {
+ if(!_childListArray[i].isEmpty())
+ {
+ return false;
+ }
+ }
+ return true;
}
//
@@ -139,44 +139,44 @@ abstract class Communicator extends TreeNode implements DescriptorHolder
public void newAdapter()
{
- _adapters.newChild();
+ _adapters.newChild();
}
public void newDbEnv()
{
- _dbEnvs.newChild();
+ _dbEnvs.newChild();
}
public void newService()
{
- _services.newChild();
+ _services.newChild();
}
public void newServiceFromTemplate()
{
- _services.newServiceFromTemplate();
+ _services.newServiceFromTemplate();
}
public void paste()
{
- Object descriptor = getCoordinator().getClipboard();
-
- if(descriptor instanceof AdapterDescriptor)
- {
- AdapterDescriptor d = (AdapterDescriptor)descriptor;
- _adapters.newAdapter(Adapter.copyDescriptor(d));
- }
- else if(descriptor instanceof DbEnvDescriptor)
- {
- DbEnvDescriptor d = (DbEnvDescriptor)descriptor;
- _dbEnvs.newDbEnv(DbEnv.copyDescriptor(d));
- }
- else if(descriptor instanceof ServiceInstanceDescriptor && _services.initialized())
- {
- ServiceInstanceDescriptor d = (ServiceInstanceDescriptor)descriptor;
- _services.newService(ServiceInstance.copyDescriptor(d));
- }
- else
- {
- ((TreeNode)_parent).paste();
- }
+ Object descriptor = getCoordinator().getClipboard();
+
+ if(descriptor instanceof AdapterDescriptor)
+ {
+ AdapterDescriptor d = (AdapterDescriptor)descriptor;
+ _adapters.newAdapter(Adapter.copyDescriptor(d));
+ }
+ else if(descriptor instanceof DbEnvDescriptor)
+ {
+ DbEnvDescriptor d = (DbEnvDescriptor)descriptor;
+ _dbEnvs.newDbEnv(DbEnv.copyDescriptor(d));
+ }
+ else if(descriptor instanceof ServiceInstanceDescriptor && _services.initialized())
+ {
+ ServiceInstanceDescriptor d = (ServiceInstanceDescriptor)descriptor;
+ _services.newService(ServiceInstance.copyDescriptor(d));
+ }
+ else
+ {
+ ((TreeNode)_parent).paste();
+ }
}
abstract CommunicatorDescriptor getCommunicatorDescriptor();
@@ -188,736 +188,736 @@ abstract class Communicator extends TreeNode implements DescriptorHolder
//
java.util.List findInstances()
{
- java.util.List result = new java.util.LinkedList();
- result.add(this);
- return result;
+ java.util.List result = new java.util.LinkedList();
+ result.add(this);
+ return result;
}
TreeNode findChildLike(TreeNode other)
{
- if(other instanceof Adapter)
- {
- return _adapters.findChildById(other.getId());
- }
- else if(other instanceof DbEnv)
- {
- return _dbEnvs.findChildById(other.getId());
- }
- else if(other instanceof Service)
- {
- return _dbEnvs.findChildById(other.getId());
- }
- else
- {
- return null;
- }
+ if(other instanceof Adapter)
+ {
+ return _adapters.findChildById(other.getId());
+ }
+ else if(other instanceof DbEnv)
+ {
+ return _dbEnvs.findChildById(other.getId());
+ }
+ else if(other instanceof Service)
+ {
+ return _dbEnvs.findChildById(other.getId());
+ }
+ else
+ {
+ return null;
+ }
}
boolean isIceBox()
{
- return false;
+ return false;
}
protected Communicator(TreeNode parent, String id)
{
- super(parent, id);
+ super(parent, id);
}
abstract class ChildList
{
- abstract TreeNode createChild(Object descriptor) throws UpdateFailedException;
- abstract void newChild();
-
- protected ChildList(boolean sorted)
- {
- _sorted = sorted;
- }
-
- void write(XMLWriter writer) throws java.io.IOException
- {
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- TreeNode child = (TreeNode)p.next();
- child.write(writer);
- }
- }
-
- //
- // Some list-like methods
- //
- java.util.Iterator iterator()
- {
- return _children.iterator();
- }
-
- TreeNode get(int index)
- {
- return (TreeNode)_children.get(index);
- }
-
- int indexOf(Object obj)
- {
- return _children.indexOf(obj);
- }
-
- int size()
- {
- return _children.size();
- }
-
- boolean isEmpty()
- {
- return _children.isEmpty();
- }
-
- //
- // Non-list methods
- //
-
- void init(java.util.List descriptors) throws UpdateFailedException
- {
- assert _descriptors == null;
- assert _children.isEmpty();
-
- _descriptors = descriptors;
- java.util.Iterator p = _descriptors.iterator();
-
- while(p.hasNext())
- {
- Object descriptor = p.next();
- TreeNode child = createChild(descriptor);
- addChild(child, false);
- }
- }
-
- boolean initialized()
- {
- return _descriptors != null;
- }
-
- void clear()
- {
- _descriptors = null;
- _children.clear();
- }
-
- TreeNode addNewChild(Object descriptor) throws UpdateFailedException
- {
- TreeNode child = createChild(descriptor);
- addChild(child, true);
-
- return child;
- }
-
- TreeNode findChildWithDescriptor(Object descriptor)
- {
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- TreeNode child = (TreeNode)p.next();
- if(child.getDescriptor() == descriptor)
- {
- return child;
- }
- }
- return null;
- }
-
- TreeNode findChildById(String id)
- {
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- TreeNode child = (TreeNode)p.next();
- if(child.getId().equals(id))
- {
- return child;
- }
- }
- return null;
- }
-
- void addChild(TreeNode child, boolean fireEvent) throws UpdateFailedException
- {
- if(_sorted)
- {
- DefaultTreeModel treeModel = fireEvent ?
- getRoot().getTreeModel() : null;
-
- if(!insertSortedChild(child, _children, treeModel))
- {
- throw new UpdateFailedException(Communicator.this, child.getId());
- }
- }
- else
- {
- //
- // Just add the child at the end of the list
- //
- _children.add(child);
- if(fireEvent)
- {
- getRoot().getTreeModel().nodesWereInserted(Communicator.this, new int[]{getIndex(child)});
- }
- }
- }
-
- int removeChild(TreeNode child)
- {
- int index = getIndex(child);
-
- _children.remove(child);
-
- getRoot().getTreeModel().nodesWereRemoved(Communicator.this,
- new int[]{index},
- new Object[]{child});
- return index;
- }
-
- void destroyChild(TreeNode child)
- {
- if(child.isEphemeral())
- {
- removeChild(child);
- }
- else
- {
- Object descriptor = child.getDescriptor();
- removeDescriptor(descriptor);
- getEnclosingEditable().markModified();
- getRoot().updated();
- removeChild(child);
- }
- }
-
- void addDescriptor(Object descriptor)
- {
- _descriptors.add(descriptor);
- }
-
- void removeDescriptor(Object descriptor)
- {
- //
- // A straight remove uses equals(), which is not the desired behavior
- //
- java.util.Iterator p = _descriptors.iterator();
- while(p.hasNext())
- {
- if(descriptor == p.next())
- {
- p.remove();
- break;
- }
- }
- }
-
- boolean canMove(TreeNode child, boolean up)
- {
- int i = _children.indexOf(child);
- assert i != -1;
- return (up && i > 0) || (!up && i < _children.size() - 1);
- }
-
- void tryAdd(Object descriptor) throws UpdateFailedException
- {
- addDescriptor(descriptor);
- try
- {
- addNewChild(descriptor);
- }
- catch(UpdateFailedException e)
- {
- removeDescriptor(descriptor);
- throw e;
- }
- getEnclosingEditable().markModified();
- }
-
- void tryUpdate(TreeNode child) throws UpdateFailedException
- {
- //
- // Child is an Adapter or DbEnv
- //
- assert _sorted;
-
- Object descriptor = child.getDescriptor();
- removeChild(child);
- try
- {
- addNewChild(descriptor);
- }
- catch(UpdateFailedException e)
- {
- addChild(child, true);
- throw e;
- }
- getEnclosingEditable().markModified();
- }
-
- protected String makeNewChildId(String base)
- {
- String id = base;
- int i = 0;
- while(findChildById(id) != null)
- {
- id = base + "-" + (++i);
- }
- return id;
- }
-
- protected java.util.List _children = new java.util.LinkedList();
- protected java.util.List _descriptors;
- protected boolean _sorted;
+ abstract TreeNode createChild(Object descriptor) throws UpdateFailedException;
+ abstract void newChild();
+
+ protected ChildList(boolean sorted)
+ {
+ _sorted = sorted;
+ }
+
+ void write(XMLWriter writer) throws java.io.IOException
+ {
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ TreeNode child = (TreeNode)p.next();
+ child.write(writer);
+ }
+ }
+
+ //
+ // Some list-like methods
+ //
+ java.util.Iterator iterator()
+ {
+ return _children.iterator();
+ }
+
+ TreeNode get(int index)
+ {
+ return (TreeNode)_children.get(index);
+ }
+
+ int indexOf(Object obj)
+ {
+ return _children.indexOf(obj);
+ }
+
+ int size()
+ {
+ return _children.size();
+ }
+
+ boolean isEmpty()
+ {
+ return _children.isEmpty();
+ }
+
+ //
+ // Non-list methods
+ //
+
+ void init(java.util.List descriptors) throws UpdateFailedException
+ {
+ assert _descriptors == null;
+ assert _children.isEmpty();
+
+ _descriptors = descriptors;
+ java.util.Iterator p = _descriptors.iterator();
+
+ while(p.hasNext())
+ {
+ Object descriptor = p.next();
+ TreeNode child = createChild(descriptor);
+ addChild(child, false);
+ }
+ }
+
+ boolean initialized()
+ {
+ return _descriptors != null;
+ }
+
+ void clear()
+ {
+ _descriptors = null;
+ _children.clear();
+ }
+
+ TreeNode addNewChild(Object descriptor) throws UpdateFailedException
+ {
+ TreeNode child = createChild(descriptor);
+ addChild(child, true);
+
+ return child;
+ }
+
+ TreeNode findChildWithDescriptor(Object descriptor)
+ {
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ TreeNode child = (TreeNode)p.next();
+ if(child.getDescriptor() == descriptor)
+ {
+ return child;
+ }
+ }
+ return null;
+ }
+
+ TreeNode findChildById(String id)
+ {
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ TreeNode child = (TreeNode)p.next();
+ if(child.getId().equals(id))
+ {
+ return child;
+ }
+ }
+ return null;
+ }
+
+ void addChild(TreeNode child, boolean fireEvent) throws UpdateFailedException
+ {
+ if(_sorted)
+ {
+ DefaultTreeModel treeModel = fireEvent ?
+ getRoot().getTreeModel() : null;
+
+ if(!insertSortedChild(child, _children, treeModel))
+ {
+ throw new UpdateFailedException(Communicator.this, child.getId());
+ }
+ }
+ else
+ {
+ //
+ // Just add the child at the end of the list
+ //
+ _children.add(child);
+ if(fireEvent)
+ {
+ getRoot().getTreeModel().nodesWereInserted(Communicator.this, new int[]{getIndex(child)});
+ }
+ }
+ }
+
+ int removeChild(TreeNode child)
+ {
+ int index = getIndex(child);
+
+ _children.remove(child);
+
+ getRoot().getTreeModel().nodesWereRemoved(Communicator.this,
+ new int[]{index},
+ new Object[]{child});
+ return index;
+ }
+
+ void destroyChild(TreeNode child)
+ {
+ if(child.isEphemeral())
+ {
+ removeChild(child);
+ }
+ else
+ {
+ Object descriptor = child.getDescriptor();
+ removeDescriptor(descriptor);
+ getEnclosingEditable().markModified();
+ getRoot().updated();
+ removeChild(child);
+ }
+ }
+
+ void addDescriptor(Object descriptor)
+ {
+ _descriptors.add(descriptor);
+ }
+
+ void removeDescriptor(Object descriptor)
+ {
+ //
+ // A straight remove uses equals(), which is not the desired behavior
+ //
+ java.util.Iterator p = _descriptors.iterator();
+ while(p.hasNext())
+ {
+ if(descriptor == p.next())
+ {
+ p.remove();
+ break;
+ }
+ }
+ }
+
+ boolean canMove(TreeNode child, boolean up)
+ {
+ int i = _children.indexOf(child);
+ assert i != -1;
+ return (up && i > 0) || (!up && i < _children.size() - 1);
+ }
+
+ void tryAdd(Object descriptor) throws UpdateFailedException
+ {
+ addDescriptor(descriptor);
+ try
+ {
+ addNewChild(descriptor);
+ }
+ catch(UpdateFailedException e)
+ {
+ removeDescriptor(descriptor);
+ throw e;
+ }
+ getEnclosingEditable().markModified();
+ }
+
+ void tryUpdate(TreeNode child) throws UpdateFailedException
+ {
+ //
+ // Child is an Adapter or DbEnv
+ //
+ assert _sorted;
+
+ Object descriptor = child.getDescriptor();
+ removeChild(child);
+ try
+ {
+ addNewChild(descriptor);
+ }
+ catch(UpdateFailedException e)
+ {
+ addChild(child, true);
+ throw e;
+ }
+ getEnclosingEditable().markModified();
+ }
+
+ protected String makeNewChildId(String base)
+ {
+ String id = base;
+ int i = 0;
+ while(findChildById(id) != null)
+ {
+ id = base + "-" + (++i);
+ }
+ return id;
+ }
+
+ protected java.util.List _children = new java.util.LinkedList();
+ protected java.util.List _descriptors;
+ protected boolean _sorted;
}
class Adapters extends ChildList
{
- Adapters()
- {
- super(true);
- }
-
- void write(XMLWriter writer, java.util.List props) throws java.io.IOException
- {
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- Adapter child = (Adapter)p.next();
- child.write(writer, props);
- }
- }
-
- void newChild()
- {
- AdapterDescriptor descriptor = new AdapterDescriptor(
- "NewAdapter",
- "",
- null,
- "",
- "",
- false,
- true,
- new java.util.LinkedList(),
- new java.util.LinkedList()
- );
+ Adapters()
+ {
+ super(true);
+ }
+
+ void write(XMLWriter writer, java.util.List props) throws java.io.IOException
+ {
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ Adapter child = (Adapter)p.next();
+ child.write(writer, props);
+ }
+ }
+
+ void newChild()
+ {
+ AdapterDescriptor descriptor = new AdapterDescriptor(
+ "NewAdapter",
+ "",
+ null,
+ "",
+ "",
+ false,
+ true,
+ new java.util.LinkedList(),
+ new java.util.LinkedList()
+ );
- newAdapter(descriptor);
- }
-
- TreeNode createChild(Object descriptor)
- {
- AdapterDescriptor ad = (AdapterDescriptor)descriptor;
- String name = Utils.substitute(ad.name, getResolver());
- return new Adapter(Communicator.this, name, ad, false);
- }
-
- private void newAdapter(AdapterDescriptor descriptor)
- {
- descriptor.name = makeNewChildId(descriptor.name);
- Adapter adapter = new Adapter(Communicator.this, descriptor.name, descriptor, true);
- try
- {
- addChild(adapter, true);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
- getRoot().setSelectedNode(adapter);
- }
+ newAdapter(descriptor);
+ }
+
+ TreeNode createChild(Object descriptor)
+ {
+ AdapterDescriptor ad = (AdapterDescriptor)descriptor;
+ String name = Utils.substitute(ad.name, getResolver());
+ return new Adapter(Communicator.this, name, ad, false);
+ }
+
+ private void newAdapter(AdapterDescriptor descriptor)
+ {
+ descriptor.name = makeNewChildId(descriptor.name);
+ Adapter adapter = new Adapter(Communicator.this, descriptor.name, descriptor, true);
+ try
+ {
+ addChild(adapter, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
+ getRoot().setSelectedNode(adapter);
+ }
}
class DbEnvs extends ChildList
{
- DbEnvs()
- {
- super(true);
- }
-
- void newChild()
- {
- DbEnvDescriptor descriptor = new DbEnvDescriptor(
- "NewDbEnv",
- "",
- "",
- new java.util.LinkedList());
-
- newDbEnv(descriptor);
- }
-
- TreeNode createChild(Object descriptor)
- {
- DbEnvDescriptor dd = (DbEnvDescriptor)descriptor;
- String name = Utils.substitute(dd.name, getResolver());
- return new DbEnv(Communicator.this, name, dd, false);
- }
-
- private void newDbEnv(DbEnvDescriptor descriptor)
- {
- descriptor.name = makeNewChildId(descriptor.name);
- DbEnv dbEnv = new DbEnv(Communicator.this, descriptor.name, descriptor, true);
- try
- {
- addChild(dbEnv, true);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
- getRoot().setSelectedNode(dbEnv);
- }
+ DbEnvs()
+ {
+ super(true);
+ }
+
+ void newChild()
+ {
+ DbEnvDescriptor descriptor = new DbEnvDescriptor(
+ "NewDbEnv",
+ "",
+ "",
+ new java.util.LinkedList());
+
+ newDbEnv(descriptor);
+ }
+
+ TreeNode createChild(Object descriptor)
+ {
+ DbEnvDescriptor dd = (DbEnvDescriptor)descriptor;
+ String name = Utils.substitute(dd.name, getResolver());
+ return new DbEnv(Communicator.this, name, dd, false);
+ }
+
+ private void newDbEnv(DbEnvDescriptor descriptor)
+ {
+ descriptor.name = makeNewChildId(descriptor.name);
+ DbEnv dbEnv = new DbEnv(Communicator.this, descriptor.name, descriptor, true);
+ try
+ {
+ addChild(dbEnv, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
+ getRoot().setSelectedNode(dbEnv);
+ }
}
class Services extends ChildList
{
- Services()
- {
- super(false);
- }
-
- void newChild()
- {
- ServiceDescriptor serviceDescriptor =
- new ServiceDescriptor(new java.util.LinkedList(),
- new PropertySetDescriptor(new String[0], new java.util.LinkedList()),
- new java.util.LinkedList(),
- new String[0],
- "",
- "NewService",
- "");
-
- ServiceInstanceDescriptor descriptor =
- new ServiceInstanceDescriptor("",
- new java.util.HashMap(),
- serviceDescriptor,
- new PropertySetDescriptor(new String[0], new java.util.LinkedList()));
-
- newService(descriptor);
- }
-
- void newServiceFromTemplate()
- {
- ServiceInstanceDescriptor descriptor =
- new ServiceInstanceDescriptor("",
- new java.util.HashMap(),
- null,
- new PropertySetDescriptor(new String[0], new java.util.LinkedList()));
- newService(descriptor);
- }
-
- void move(TreeNode child, boolean up)
- {
- int index = getIndex(child);
- int listIndex = _children.indexOf(child);
-
- Object descriptor = child.getDescriptor();
-
- getEnclosingEditable().markModified();
- getRoot().updated();
-
- _descriptors.remove(listIndex);
- if(up)
- {
- _descriptors.add(listIndex - 1, descriptor);
- }
- else
- {
- _descriptors.add(listIndex + 1, descriptor);
- }
-
- _children.remove(listIndex);
- getRoot().getTreeModel().nodesWereRemoved(Communicator.this,
- new int[]{index},
- new Object[]{child});
- if(up)
- {
- _children.add(listIndex - 1, child);
- getRoot().getTreeModel().nodesWereInserted(Communicator.this,
- new int[]{index - 1});
-
- }
- else
- {
- _children.add(listIndex + 1, child);
- getRoot().getTreeModel().nodesWereInserted(Communicator.this,
- new int[]{index + 1});
-
- }
- getRoot().setSelectedNode(child);
- getCoordinator().showActions(child);
- }
-
- TreeNode createChild(Object o) throws UpdateFailedException
- {
- ServiceInstanceDescriptor descriptor = (ServiceInstanceDescriptor)o;
-
- if(descriptor.descriptor == null)
- {
- TemplateDescriptor templateDescriptor
- = getRoot().findServiceTemplateDescriptor(descriptor.template);
-
- assert templateDescriptor != null;
-
- String serviceName = null;
- String displayString = null;
- Utils.Resolver serviceResolver = null;
-
- if(Communicator.this instanceof PlainServer)
- {
- serviceResolver = new Utils.Resolver(getResolver(),
- descriptor.parameterValues,
- templateDescriptor.parameterDefaults);
-
- ServiceDescriptor serviceDescriptor = (ServiceDescriptor)templateDescriptor.descriptor;
- assert serviceDescriptor != null;
-
- serviceName = serviceResolver.substitute(serviceDescriptor.name);
- serviceResolver.put("service", serviceName);
- displayString = serviceName + ": " + descriptor.template + "<>";
- }
- else
- {
- //
- // Note: service names don't have to be unique
- //
- serviceName = descriptor.template + "<>";
- }
-
- return new ServiceInstance(Communicator.this,
- serviceName,
- displayString,
- descriptor,
- serviceResolver);
- }
- else
- {
- ServiceDescriptor serviceDescriptor = descriptor.descriptor;
-
- String serviceName = null;
- Utils.Resolver serviceResolver = null;
-
- if(Communicator.this instanceof PlainServer)
- {
- serviceResolver = new Utils.Resolver(getResolver());
- serviceName = serviceResolver.substitute(serviceDescriptor.name);
- serviceResolver.put("service", serviceName);
- }
- else
- {
- serviceName = serviceDescriptor.name;
- }
-
- return new PlainService(Communicator.this,
- serviceName,
- descriptor,
- serviceResolver);
- }
- }
-
- void tryUpdate(TreeNode child) throws UpdateFailedException
- {
- //
- // Rebuilding a Service is quite different since the creation of a service can
- // trigger an UpdateFailedException
- //
- Object descriptor = child.getDescriptor();
- int listIndex = _children.indexOf(child);
- assert listIndex != -1;
-
- TreeNode newChild = createChild(descriptor);
- _children.set(listIndex, newChild);
- getRoot().getTreeModel().nodeChanged(newChild);
-
- getEnclosingEditable().markModified();
- }
-
- private void newService(ServiceInstanceDescriptor descriptor)
- {
- if(descriptor.descriptor == null)
- {
- String name = makeNewChildId("NewService");
-
- //
- // Make sure descriptor.template points to a real template
- //
- ServiceTemplate t = getRoot().findServiceTemplate(descriptor.template);
-
- if(t == null)
- {
- if(getRoot().getServiceTemplates().getChildCount() == 0)
- {
- JOptionPane.showMessageDialog(
- getCoordinator().getMainFrame(),
- "You need to create a service template before you can create a service from a template.",
- "No Service Template",
- JOptionPane.INFORMATION_MESSAGE);
- return;
- }
- else
- {
- t = (ServiceTemplate)getRoot().getServiceTemplates().getChildAt(0);
- descriptor.template = t.getId();
- descriptor.parameterValues = new java.util.HashMap();
- }
- }
-
- //
- // Validate/update parameterValues
- //
- TemplateDescriptor td = (TemplateDescriptor)t.getDescriptor();
- descriptor.parameterValues = Editor.makeParameterValues(descriptor.parameterValues,
- td.parameters);
-
-
- ServiceInstance service = new ServiceInstance(Communicator.this, name, descriptor);
- try
- {
- addChild(service, true);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
- getRoot().setSelectedNode(service);
- }
- else
- {
- descriptor.descriptor.name = makeNewChildId(descriptor.descriptor.name);
-
- PlainService service = new PlainService(Communicator.this, descriptor);
- try
- {
- addChild(service, true);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
- getRoot().setSelectedNode(service);
- }
- }
+ Services()
+ {
+ super(false);
+ }
+
+ void newChild()
+ {
+ ServiceDescriptor serviceDescriptor =
+ new ServiceDescriptor(new java.util.LinkedList(),
+ new PropertySetDescriptor(new String[0], new java.util.LinkedList()),
+ new java.util.LinkedList(),
+ new String[0],
+ "",
+ "NewService",
+ "");
+
+ ServiceInstanceDescriptor descriptor =
+ new ServiceInstanceDescriptor("",
+ new java.util.HashMap(),
+ serviceDescriptor,
+ new PropertySetDescriptor(new String[0], new java.util.LinkedList()));
+
+ newService(descriptor);
+ }
+
+ void newServiceFromTemplate()
+ {
+ ServiceInstanceDescriptor descriptor =
+ new ServiceInstanceDescriptor("",
+ new java.util.HashMap(),
+ null,
+ new PropertySetDescriptor(new String[0], new java.util.LinkedList()));
+ newService(descriptor);
+ }
+
+ void move(TreeNode child, boolean up)
+ {
+ int index = getIndex(child);
+ int listIndex = _children.indexOf(child);
+
+ Object descriptor = child.getDescriptor();
+
+ getEnclosingEditable().markModified();
+ getRoot().updated();
+
+ _descriptors.remove(listIndex);
+ if(up)
+ {
+ _descriptors.add(listIndex - 1, descriptor);
+ }
+ else
+ {
+ _descriptors.add(listIndex + 1, descriptor);
+ }
+
+ _children.remove(listIndex);
+ getRoot().getTreeModel().nodesWereRemoved(Communicator.this,
+ new int[]{index},
+ new Object[]{child});
+ if(up)
+ {
+ _children.add(listIndex - 1, child);
+ getRoot().getTreeModel().nodesWereInserted(Communicator.this,
+ new int[]{index - 1});
+
+ }
+ else
+ {
+ _children.add(listIndex + 1, child);
+ getRoot().getTreeModel().nodesWereInserted(Communicator.this,
+ new int[]{index + 1});
+
+ }
+ getRoot().setSelectedNode(child);
+ getCoordinator().showActions(child);
+ }
+
+ TreeNode createChild(Object o) throws UpdateFailedException
+ {
+ ServiceInstanceDescriptor descriptor = (ServiceInstanceDescriptor)o;
+
+ if(descriptor.descriptor == null)
+ {
+ TemplateDescriptor templateDescriptor
+ = getRoot().findServiceTemplateDescriptor(descriptor.template);
+
+ assert templateDescriptor != null;
+
+ String serviceName = null;
+ String displayString = null;
+ Utils.Resolver serviceResolver = null;
+
+ if(Communicator.this instanceof PlainServer)
+ {
+ serviceResolver = new Utils.Resolver(getResolver(),
+ descriptor.parameterValues,
+ templateDescriptor.parameterDefaults);
+
+ ServiceDescriptor serviceDescriptor = (ServiceDescriptor)templateDescriptor.descriptor;
+ assert serviceDescriptor != null;
+
+ serviceName = serviceResolver.substitute(serviceDescriptor.name);
+ serviceResolver.put("service", serviceName);
+ displayString = serviceName + ": " + descriptor.template + "<>";
+ }
+ else
+ {
+ //
+ // Note: service names don't have to be unique
+ //
+ serviceName = descriptor.template + "<>";
+ }
+
+ return new ServiceInstance(Communicator.this,
+ serviceName,
+ displayString,
+ descriptor,
+ serviceResolver);
+ }
+ else
+ {
+ ServiceDescriptor serviceDescriptor = descriptor.descriptor;
+
+ String serviceName = null;
+ Utils.Resolver serviceResolver = null;
+
+ if(Communicator.this instanceof PlainServer)
+ {
+ serviceResolver = new Utils.Resolver(getResolver());
+ serviceName = serviceResolver.substitute(serviceDescriptor.name);
+ serviceResolver.put("service", serviceName);
+ }
+ else
+ {
+ serviceName = serviceDescriptor.name;
+ }
+
+ return new PlainService(Communicator.this,
+ serviceName,
+ descriptor,
+ serviceResolver);
+ }
+ }
+
+ void tryUpdate(TreeNode child) throws UpdateFailedException
+ {
+ //
+ // Rebuilding a Service is quite different since the creation of a service can
+ // trigger an UpdateFailedException
+ //
+ Object descriptor = child.getDescriptor();
+ int listIndex = _children.indexOf(child);
+ assert listIndex != -1;
+
+ TreeNode newChild = createChild(descriptor);
+ _children.set(listIndex, newChild);
+ getRoot().getTreeModel().nodeChanged(newChild);
+
+ getEnclosingEditable().markModified();
+ }
+
+ private void newService(ServiceInstanceDescriptor descriptor)
+ {
+ if(descriptor.descriptor == null)
+ {
+ String name = makeNewChildId("NewService");
+
+ //
+ // Make sure descriptor.template points to a real template
+ //
+ ServiceTemplate t = getRoot().findServiceTemplate(descriptor.template);
+
+ if(t == null)
+ {
+ if(getRoot().getServiceTemplates().getChildCount() == 0)
+ {
+ JOptionPane.showMessageDialog(
+ getCoordinator().getMainFrame(),
+ "You need to create a service template before you can create a service from a template.",
+ "No Service Template",
+ JOptionPane.INFORMATION_MESSAGE);
+ return;
+ }
+ else
+ {
+ t = (ServiceTemplate)getRoot().getServiceTemplates().getChildAt(0);
+ descriptor.template = t.getId();
+ descriptor.parameterValues = new java.util.HashMap();
+ }
+ }
+
+ //
+ // Validate/update parameterValues
+ //
+ TemplateDescriptor td = (TemplateDescriptor)t.getDescriptor();
+ descriptor.parameterValues = Editor.makeParameterValues(descriptor.parameterValues,
+ td.parameters);
+
+
+ ServiceInstance service = new ServiceInstance(Communicator.this, name, descriptor);
+ try
+ {
+ addChild(service, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
+ getRoot().setSelectedNode(service);
+ }
+ else
+ {
+ descriptor.descriptor.name = makeNewChildId(descriptor.descriptor.name);
+
+ PlainService service = new PlainService(Communicator.this, descriptor);
+ try
+ {
+ addChild(service, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
+ getRoot().setSelectedNode(service);
+ }
+ }
}
Adapters getAdapters()
{
- return _adapters;
+ return _adapters;
}
DbEnvs getDbEnvs()
{
- return _dbEnvs;
+ return _dbEnvs;
}
Services getServices()
{
- return _services;
+ return _services;
}
java.util.List findServiceInstances(String template)
{
- java.util.List result = new java.util.LinkedList();
- java.util.Iterator p = _services.iterator();
- while(p.hasNext())
- {
- Object obj = p.next();
- if(obj instanceof ServiceInstance)
- {
- ServiceInstance service = (ServiceInstance)obj;
- ServiceInstanceDescriptor d =
- (ServiceInstanceDescriptor)service.getDescriptor();
- if(d.template.equals(template))
- {
- result.add(service);
- }
- }
- }
- return result;
+ java.util.List result = new java.util.LinkedList();
+ java.util.Iterator p = _services.iterator();
+ while(p.hasNext())
+ {
+ Object obj = p.next();
+ if(obj instanceof ServiceInstance)
+ {
+ ServiceInstance service = (ServiceInstance)obj;
+ ServiceInstanceDescriptor d =
+ (ServiceInstanceDescriptor)service.getDescriptor();
+ if(d.template.equals(template))
+ {
+ result.add(service);
+ }
+ }
+ }
+ return result;
}
void removeServiceInstances(String template)
- {
- java.util.Iterator p = _services.iterator();
- while(p.hasNext())
- {
- Object obj = p.next();
- if(obj instanceof ServiceInstance)
- {
- ServiceInstance service = (ServiceInstance)obj;
- ServiceInstanceDescriptor d =
- (ServiceInstanceDescriptor)service.getDescriptor();
- if(d.template.equals(template))
- {
- p.remove();
- _services.removeDescriptor(d);
- getEnclosingEditable().markModified();
- }
- }
- }
+ {
+ java.util.Iterator p = _services.iterator();
+ while(p.hasNext())
+ {
+ Object obj = p.next();
+ if(obj instanceof ServiceInstance)
+ {
+ ServiceInstance service = (ServiceInstance)obj;
+ ServiceInstanceDescriptor d =
+ (ServiceInstanceDescriptor)service.getDescriptor();
+ if(d.template.equals(template))
+ {
+ p.remove();
+ _services.removeDescriptor(d);
+ getEnclosingEditable().markModified();
+ }
+ }
+ }
}
void removeSortedChildren(String[] childIds, java.util.List fromChildren)
{
- removeSortedChildren(childIds, fromChildren, getRoot().getTreeModel());
+ removeSortedChildren(childIds, fromChildren, getRoot().getTreeModel());
}
void childrenChanged(java.util.List children)
{
- childrenChanged(children, getRoot().getTreeModel());
+ childrenChanged(children, getRoot().getTreeModel());
}
String getProperty(String key)
{
- CommunicatorDescriptor descriptor = getCommunicatorDescriptor();
- java.util.Iterator p = descriptor.propertySet.properties.iterator();
- while(p.hasNext())
- {
- PropertyDescriptor pd = (PropertyDescriptor)p.next();
- if(pd.name.equals(key))
- {
- return pd.value;
- }
- }
- return null;
+ CommunicatorDescriptor descriptor = getCommunicatorDescriptor();
+ java.util.Iterator p = descriptor.propertySet.properties.iterator();
+ while(p.hasNext())
+ {
+ PropertyDescriptor pd = (PropertyDescriptor)p.next();
+ if(pd.name.equals(key))
+ {
+ return pd.value;
+ }
+ }
+ return null;
}
String lookupPropertyValue(String val)
{
- CommunicatorDescriptor descriptor = getCommunicatorDescriptor();
- java.util.Iterator p = descriptor.propertySet.properties.iterator();
- while(p.hasNext())
- {
- PropertyDescriptor pd = (PropertyDescriptor)p.next();
- if(pd.value.equals(val))
- {
- return pd.name;
- }
- }
- return "";
+ CommunicatorDescriptor descriptor = getCommunicatorDescriptor();
+ java.util.Iterator p = descriptor.propertySet.properties.iterator();
+ while(p.hasNext())
+ {
+ PropertyDescriptor pd = (PropertyDescriptor)p.next();
+ if(pd.value.equals(val))
+ {
+ return pd.name;
+ }
+ }
+ return "";
}
void setProperty(String key, String newValue)
{
- CommunicatorDescriptor descriptor = getCommunicatorDescriptor();
- removeProperty(key);
- ((java.util.LinkedList)descriptor.propertySet.properties).addFirst(new PropertyDescriptor(key, newValue));
+ CommunicatorDescriptor descriptor = getCommunicatorDescriptor();
+ removeProperty(key);
+ ((java.util.LinkedList)descriptor.propertySet.properties).addFirst(new PropertyDescriptor(key, newValue));
}
void removeProperty(String key)
{
- CommunicatorDescriptor descriptor = getCommunicatorDescriptor();
- java.util.Iterator p = descriptor.propertySet.properties.iterator();
- while(p.hasNext())
- {
- PropertyDescriptor pd = (PropertyDescriptor)p.next();
- if(pd.name.equals(key))
- {
- p.remove();
- }
- }
+ CommunicatorDescriptor descriptor = getCommunicatorDescriptor();
+ java.util.Iterator p = descriptor.propertySet.properties.iterator();
+ while(p.hasNext())
+ {
+ PropertyDescriptor pd = (PropertyDescriptor)p.next();
+ if(pd.name.equals(key))
+ {
+ p.remove();
+ }
+ }
}
//
diff --git a/java/src/IceGridGUI/Application/CommunicatorChildEditor.java b/java/src/IceGridGUI/Application/CommunicatorChildEditor.java
index ee3ffe13935..041a9a72826 100755
--- a/java/src/IceGridGUI/Application/CommunicatorChildEditor.java
+++ b/java/src/IceGridGUI/Application/CommunicatorChildEditor.java
@@ -23,109 +23,109 @@ abstract class CommunicatorChildEditor extends Editor
protected boolean applyUpdate(boolean refresh)
{
- Root root = _target.getRoot();
- root.disableSelectionListener();
- try
- {
- if(_target.isEphemeral())
- {
- Communicator.ChildList childList = getChildList();
-
- writeDescriptor();
- Object descriptor = _target.getDescriptor();
- _target.destroy(); // just removes the child
-
- try
- {
- childList.tryAdd(descriptor);
- }
- catch(UpdateFailedException e)
- {
- //
- // Restore ephemeral
- //
- try
- {
- childList.addChild(_target, true);
- }
- catch(UpdateFailedException die)
- {
- assert false;
- }
-
- JOptionPane.showMessageDialog(
- root.getCoordinator().getMainFrame(),
- e.toString(),
- "Apply failed",
- JOptionPane.ERROR_MESSAGE);
-
- root.setSelectedNode(_target);
- return false;
- }
-
- //
- // Success
- //
- _target = childList.findChildWithDescriptor(descriptor);
- root.updated();
- if(refresh)
- {
- root.setSelectedNode(_target);
- }
- }
- else if(isSimpleUpdate())
- {
- writeDescriptor();
- root.updated();
- ((Communicator)_target.getParent()).getEnclosingEditable().markModified();
- }
- else
- {
- //
- // Save to be able to rollback
- //
- Object savedDescriptor = ((DescriptorHolder)_target).saveDescriptor();
- Communicator.ChildList childList = getChildList();
- writeDescriptor();
- try
- {
- childList.tryUpdate(_target);
- }
- catch(UpdateFailedException e)
- {
- ((DescriptorHolder)_target).restoreDescriptor(savedDescriptor);
- JOptionPane.showMessageDialog(
- root.getCoordinator().getMainFrame(),
- e.toString(),
- "Apply failed",
- JOptionPane.ERROR_MESSAGE);
- return false;
- }
-
- //
- // Success
- //
- _target = childList.findChildWithDescriptor(_target.getDescriptor());
- root.updated();
- if(refresh)
- {
- root.setSelectedNode(_target);
- }
- }
-
- postUpdate();
+ Root root = _target.getRoot();
+ root.disableSelectionListener();
+ try
+ {
+ if(_target.isEphemeral())
+ {
+ Communicator.ChildList childList = getChildList();
+
+ writeDescriptor();
+ Object descriptor = _target.getDescriptor();
+ _target.destroy(); // just removes the child
+
+ try
+ {
+ childList.tryAdd(descriptor);
+ }
+ catch(UpdateFailedException e)
+ {
+ //
+ // Restore ephemeral
+ //
+ try
+ {
+ childList.addChild(_target, true);
+ }
+ catch(UpdateFailedException die)
+ {
+ assert false;
+ }
+
+ JOptionPane.showMessageDialog(
+ root.getCoordinator().getMainFrame(),
+ e.toString(),
+ "Apply failed",
+ JOptionPane.ERROR_MESSAGE);
+
+ root.setSelectedNode(_target);
+ return false;
+ }
+
+ //
+ // Success
+ //
+ _target = childList.findChildWithDescriptor(descriptor);
+ root.updated();
+ if(refresh)
+ {
+ root.setSelectedNode(_target);
+ }
+ }
+ else if(isSimpleUpdate())
+ {
+ writeDescriptor();
+ root.updated();
+ ((Communicator)_target.getParent()).getEnclosingEditable().markModified();
+ }
+ else
+ {
+ //
+ // Save to be able to rollback
+ //
+ Object savedDescriptor = ((DescriptorHolder)_target).saveDescriptor();
+ Communicator.ChildList childList = getChildList();
+ writeDescriptor();
+ try
+ {
+ childList.tryUpdate(_target);
+ }
+ catch(UpdateFailedException e)
+ {
+ ((DescriptorHolder)_target).restoreDescriptor(savedDescriptor);
+ JOptionPane.showMessageDialog(
+ root.getCoordinator().getMainFrame(),
+ e.toString(),
+ "Apply failed",
+ JOptionPane.ERROR_MESSAGE);
+ return false;
+ }
+
+ //
+ // Success
+ //
+ _target = childList.findChildWithDescriptor(_target.getDescriptor());
+ root.updated();
+ if(refresh)
+ {
+ root.setSelectedNode(_target);
+ }
+ }
+
+ postUpdate();
- if(refresh)
- {
- root.getCoordinator().getCurrentTab().showNode(_target);
- }
- _applyButton.setEnabled(false);
- _discardButton.setEnabled(false);
- return true;
- }
- finally
- {
- root.enableSelectionListener();
- }
+ if(refresh)
+ {
+ root.getCoordinator().getCurrentTab().showNode(_target);
+ }
+ _applyButton.setEnabled(false);
+ _discardButton.setEnabled(false);
+ return true;
+ }
+ finally
+ {
+ root.enableSelectionListener();
+ }
}
}
diff --git a/java/src/IceGridGUI/Application/CommunicatorSubEditor.java b/java/src/IceGridGUI/Application/CommunicatorSubEditor.java
index 68a7200b179..5286e57b059 100755
--- a/java/src/IceGridGUI/Application/CommunicatorSubEditor.java
+++ b/java/src/IceGridGUI/Application/CommunicatorSubEditor.java
@@ -27,123 +27,123 @@ class CommunicatorSubEditor
{
CommunicatorSubEditor(Editor mainEditor)
{
- _mainEditor = mainEditor;
-
- _description.getDocument().addDocumentListener(
- _mainEditor.getUpdateListener());
- _description.setToolTipText("An optional description");
-
- _propertySets.getDocument().addDocumentListener(
- _mainEditor.getUpdateListener());
- _propertySets.setToolTipText("Property Set References");
-
- _properties = new PropertiesField(mainEditor);
- _logFiles = new MapField(mainEditor, "Path", "Property",
- true);
- _logFiles.setToolTipText("Log files used by this server or service");
+ _mainEditor = mainEditor;
+
+ _description.getDocument().addDocumentListener(
+ _mainEditor.getUpdateListener());
+ _description.setToolTipText("An optional description");
+
+ _propertySets.getDocument().addDocumentListener(
+ _mainEditor.getUpdateListener());
+ _propertySets.setToolTipText("Property Set References");
+
+ _properties = new PropertiesField(mainEditor);
+ _logFiles = new MapField(mainEditor, "Path", "Property",
+ true);
+ _logFiles.setToolTipText("Log files used by this server or service");
}
void appendProperties(DefaultFormBuilder builder)
{
- builder.append("Description");
- builder.nextLine();
- builder.append("");
- builder.nextRow(-2);
- CellConstraints cc = new CellConstraints();
- JScrollPane scrollPane = new JScrollPane(_description);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 3));
- builder.nextRow(2);
- builder.nextLine();
-
- builder.append("Property Sets");
- builder.append(_propertySets, 3);
- builder.nextLine();
-
- builder.append("Properties");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
-
- builder.nextRow(-6);
- scrollPane = new JScrollPane(_properties);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
- builder.nextRow(6);
- builder.nextLine();
-
- builder.append("Log files");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
- builder.nextRow(-4);
- scrollPane = new JScrollPane(_logFiles);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 5));
- builder.nextRow(4);
- builder.nextLine();
+ builder.append("Description");
+ builder.nextLine();
+ builder.append("");
+ builder.nextRow(-2);
+ CellConstraints cc = new CellConstraints();
+ JScrollPane scrollPane = new JScrollPane(_description);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 3));
+ builder.nextRow(2);
+ builder.nextLine();
+
+ builder.append("Property Sets");
+ builder.append(_propertySets, 3);
+ builder.nextLine();
+
+ builder.append("Properties");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+
+ builder.nextRow(-6);
+ scrollPane = new JScrollPane(_properties);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
+ builder.nextRow(6);
+ builder.nextLine();
+
+ builder.append("Log files");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+ builder.nextRow(-4);
+ scrollPane = new JScrollPane(_logFiles);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 5));
+ builder.nextRow(4);
+ builder.nextLine();
}
void writeDescriptor(CommunicatorDescriptor descriptor)
{
- descriptor.propertySet.references =
- (String[])_propertySets.getList().toArray(new String[0]);
- descriptor.propertySet.properties = _properties.getProperties();
- descriptor.description = _description.getText();
-
- java.util.TreeMap tm = _logFiles.get();
- java.util.Iterator p = tm.entrySet().iterator();
- descriptor.logs = new String[tm.size()];
- int i = 0;
-
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- String path = (String)entry.getKey();
- String prop = ((String)entry.getValue()).trim();
-
- descriptor.logs[i++] = path;
- if(!prop.equals(""))
- {
- setProperty((java.util.LinkedList)descriptor.propertySet.properties, prop, path);
- }
- }
+ descriptor.propertySet.references =
+ (String[])_propertySets.getList().toArray(new String[0]);
+ descriptor.propertySet.properties = _properties.getProperties();
+ descriptor.description = _description.getText();
+
+ java.util.TreeMap tm = _logFiles.get();
+ java.util.Iterator p = tm.entrySet().iterator();
+ descriptor.logs = new String[tm.size()];
+ int i = 0;
+
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ String path = (String)entry.getKey();
+ String prop = ((String)entry.getValue()).trim();
+
+ descriptor.logs[i++] = path;
+ if(!prop.equals(""))
+ {
+ setProperty((java.util.LinkedList)descriptor.propertySet.properties, prop, path);
+ }
+ }
}
void show(CommunicatorDescriptor descriptor, boolean isEditable)
{
- Utils.Resolver detailResolver = _mainEditor.getDetailResolver();
- isEditable = isEditable && (detailResolver == null);
-
- //
- // Note that we don't substitute in the lookup
- //
- java.util.Map map = new java.util.TreeMap();
- for(int i = 0; i < descriptor.logs.length; ++i)
- {
- String prop = lookupKey(descriptor.propertySet.properties,
- descriptor.logs[i]);
- map.put(descriptor.logs[i], prop);
- }
- _logFiles.set(map, detailResolver, isEditable);
-
- _propertySets.setList(java.util.Arrays.asList(descriptor.propertySet.references),
- detailResolver);
- _propertySets.setEditable(isEditable);
- _properties.setProperties(descriptor.propertySet.properties,
- descriptor.adapters,
- descriptor.logs,
- detailResolver, isEditable);
-
- _description.setText(
- Utils.substitute(descriptor.description, detailResolver));
- _description.setEditable(isEditable);
- _description.setOpaque(isEditable);
+ Utils.Resolver detailResolver = _mainEditor.getDetailResolver();
+ isEditable = isEditable && (detailResolver == null);
+
+ //
+ // Note that we don't substitute in the lookup
+ //
+ java.util.Map map = new java.util.TreeMap();
+ for(int i = 0; i < descriptor.logs.length; ++i)
+ {
+ String prop = lookupKey(descriptor.propertySet.properties,
+ descriptor.logs[i]);
+ map.put(descriptor.logs[i], prop);
+ }
+ _logFiles.set(map, detailResolver, isEditable);
+
+ _propertySets.setList(java.util.Arrays.asList(descriptor.propertySet.references),
+ detailResolver);
+ _propertySets.setEditable(isEditable);
+ _properties.setProperties(descriptor.propertySet.properties,
+ descriptor.adapters,
+ descriptor.logs,
+ detailResolver, isEditable);
+
+ _description.setText(
+ Utils.substitute(descriptor.description, detailResolver));
+ _description.setEditable(isEditable);
+ _description.setOpaque(isEditable);
}
@@ -152,35 +152,35 @@ class CommunicatorSubEditor
//
private String lookupKey(java.util.List props, String value)
{
- java.util.Iterator p = props.iterator();
- while(p.hasNext())
- {
- PropertyDescriptor pd = (PropertyDescriptor)p.next();
- if(pd.value.equals(value))
- {
- return pd.name;
- }
- }
- return "";
+ java.util.Iterator p = props.iterator();
+ while(p.hasNext())
+ {
+ PropertyDescriptor pd = (PropertyDescriptor)p.next();
+ if(pd.value.equals(value))
+ {
+ return pd.name;
+ }
+ }
+ return "";
}
private void setProperty(java.util.LinkedList props, String key, String newValue)
{
- removeProperty(props, key);
- props.addFirst(new PropertyDescriptor(key, newValue));
+ removeProperty(props, key);
+ props.addFirst(new PropertyDescriptor(key, newValue));
}
private void removeProperty(java.util.List props, String key)
{
- java.util.Iterator p = props.iterator();
- while(p.hasNext())
- {
- PropertyDescriptor pd = (PropertyDescriptor)p.next();
- if(pd.name.equals(key))
- {
- p.remove();
- }
- }
+ java.util.Iterator p = props.iterator();
+ while(p.hasNext())
+ {
+ PropertyDescriptor pd = (PropertyDescriptor)p.next();
+ if(pd.name.equals(key))
+ {
+ p.remove();
+ }
+ }
}
diff --git a/java/src/IceGridGUI/Application/DbEnv.java b/java/src/IceGridGUI/Application/DbEnv.java
index b2e89d668c9..790dcd83d89 100755
--- a/java/src/IceGridGUI/Application/DbEnv.java
+++ b/java/src/IceGridGUI/Application/DbEnv.java
@@ -19,36 +19,36 @@ class DbEnv extends TreeNode implements DescriptorHolder
{
static public DbEnvDescriptor copyDescriptor(DbEnvDescriptor d)
{
- return (DbEnvDescriptor)d.clone();
+ return (DbEnvDescriptor)d.clone();
}
static public java.util.List copyDescriptors(java.util.List list)
{
- java.util.List copy = new java.util.LinkedList();
- java.util.Iterator p = list.iterator();
- while(p.hasNext())
- {
- copy.add(copyDescriptor((DbEnvDescriptor)p.next()));
- }
- return copy;
+ java.util.List copy = new java.util.LinkedList();
+ java.util.Iterator p = list.iterator();
+ while(p.hasNext())
+ {
+ copy.add(copyDescriptor((DbEnvDescriptor)p.next()));
+ }
+ return copy;
}
public Component getTreeCellRendererComponent(
- JTree tree,
- Object value,
- boolean sel,
- boolean expanded,
- boolean leaf,
- int row,
- boolean hasFocus)
- {
- if(_cellRenderer == null)
- {
- _cellRenderer = new DefaultTreeCellRenderer();
- _cellRenderer.setLeafIcon(Utils.getIcon("/icons/16x16/database.png"));
- }
- return _cellRenderer.getTreeCellRendererComponent(
- tree, value, sel, expanded, leaf, row, hasFocus);
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
+ {
+ if(_cellRenderer == null)
+ {
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _cellRenderer.setLeafIcon(Utils.getIcon("/icons/16x16/database.png"));
+ }
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
}
//
@@ -56,134 +56,134 @@ class DbEnv extends TreeNode implements DescriptorHolder
//
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
- actions[COPY] = !_ephemeral;
+ boolean[] actions = new boolean[ACTION_COUNT];
+ actions[COPY] = !_ephemeral;
- Object clipboard = getCoordinator().getClipboard();
- actions[PASTE] = clipboard != null &&
- (clipboard instanceof AdapterDescriptor
- || clipboard instanceof DbEnvDescriptor);
- actions[DELETE] = true;
-
- if(!_ephemeral)
- {
- boolean[] parentActions = ((TreeNode)_parent).getAvailableActions();
- actions[SHOW_VARS] = parentActions[SHOW_VARS];
- actions[SUBSTITUTE_VARS] = parentActions[SUBSTITUTE_VARS];
- }
- return actions;
+ Object clipboard = getCoordinator().getClipboard();
+ actions[PASTE] = clipboard != null &&
+ (clipboard instanceof AdapterDescriptor
+ || clipboard instanceof DbEnvDescriptor);
+ actions[DELETE] = true;
+
+ if(!_ephemeral)
+ {
+ boolean[] parentActions = ((TreeNode)_parent).getAvailableActions();
+ actions[SHOW_VARS] = parentActions[SHOW_VARS];
+ actions[SUBSTITUTE_VARS] = parentActions[SUBSTITUTE_VARS];
+ }
+ return actions;
}
public void copy()
{
- getCoordinator().setClipboard(copyDescriptor(_descriptor));
- getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
+ getCoordinator().setClipboard(copyDescriptor(_descriptor));
+ getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
}
public void paste()
{
- ((TreeNode)_parent).paste();
+ ((TreeNode)_parent).paste();
}
public Editor getEditor()
{
- if(_editor == null)
- {
- _editor = (DbEnvEditor)getRoot().getEditor(DbEnvEditor.class, this);
- }
- _editor.show(this);
- return _editor;
+ if(_editor == null)
+ {
+ _editor = (DbEnvEditor)getRoot().getEditor(DbEnvEditor.class, this);
+ }
+ _editor.show(this);
+ return _editor;
}
protected Editor createEditor()
{
- return new DbEnvEditor();
+ return new DbEnvEditor();
}
public Object getDescriptor()
{
- return _descriptor;
+ return _descriptor;
}
public Object copyDescriptor()
{
- return copyDescriptor(_descriptor);
+ return copyDescriptor(_descriptor);
}
public Object saveDescriptor()
{
- return copyDescriptor(_descriptor);
+ return copyDescriptor(_descriptor);
}
public void restoreDescriptor(Object savedDescriptor)
{
- DbEnvDescriptor clone = (DbEnvDescriptor)savedDescriptor;
- _descriptor.name = clone.name;
- _descriptor.dbHome = clone.dbHome;
- _descriptor.description = clone.description;
- _descriptor.properties = clone.properties;
+ DbEnvDescriptor clone = (DbEnvDescriptor)savedDescriptor;
+ _descriptor.name = clone.name;
+ _descriptor.dbHome = clone.dbHome;
+ _descriptor.description = clone.description;
+ _descriptor.properties = clone.properties;
}
public void destroy()
{
- ((Communicator)_parent).getDbEnvs().destroyChild(this);
+ ((Communicator)_parent).getDbEnvs().destroyChild(this);
}
public boolean isEphemeral()
{
- return _ephemeral;
+ return _ephemeral;
}
DbEnv(Communicator parent, String dbEnvName, DbEnvDescriptor descriptor,
- boolean ephemeral)
+ boolean ephemeral)
{
- super(parent, dbEnvName);
- _descriptor = descriptor;
- _ephemeral = ephemeral;
+ super(parent, dbEnvName);
+ _descriptor = descriptor;
+ _ephemeral = ephemeral;
}
static void writeDbProperties(XMLWriter writer,
- java.util.List properties)
- throws java.io.IOException
+ java.util.List properties)
+ throws java.io.IOException
{
- java.util.Iterator p = properties.iterator();
- while(p.hasNext())
- {
- PropertyDescriptor pd = (PropertyDescriptor)p.next();
- java.util.List attributes = new java.util.LinkedList();
- attributes.add(createAttribute("name", pd.name));
- attributes.add(createAttribute("value", pd.value));
- writer.writeElement("dbproperty", attributes);
- }
+ java.util.Iterator p = properties.iterator();
+ while(p.hasNext())
+ {
+ PropertyDescriptor pd = (PropertyDescriptor)p.next();
+ java.util.List attributes = new java.util.LinkedList();
+ attributes.add(createAttribute("name", pd.name));
+ attributes.add(createAttribute("value", pd.value));
+ writer.writeElement("dbproperty", attributes);
+ }
}
void write(XMLWriter writer) throws java.io.IOException
{
- if(!_ephemeral)
- {
- java.util.List attributes = new java.util.LinkedList();
- attributes.add(createAttribute("name", _descriptor.name));
- if(_descriptor.dbHome.length() > 0)
- {
- attributes.add(createAttribute("home", _descriptor.dbHome));
- }
-
- if(_descriptor.description.length() == 0 &&
- _descriptor.properties.isEmpty())
- {
- writer.writeElement("dbenv", attributes);
- }
- else
- {
- writer.writeStartTag("dbenv", attributes);
- if(_descriptor.description.length() > 0)
- {
- writer.writeElement("description", _descriptor.description);
- }
- writeDbProperties(writer, _descriptor.properties);
- writer.writeEndTag("dbenv");
- }
- }
+ if(!_ephemeral)
+ {
+ java.util.List attributes = new java.util.LinkedList();
+ attributes.add(createAttribute("name", _descriptor.name));
+ if(_descriptor.dbHome.length() > 0)
+ {
+ attributes.add(createAttribute("home", _descriptor.dbHome));
+ }
+
+ if(_descriptor.description.length() == 0 &&
+ _descriptor.properties.isEmpty())
+ {
+ writer.writeElement("dbenv", attributes);
+ }
+ else
+ {
+ writer.writeStartTag("dbenv", attributes);
+ if(_descriptor.description.length() > 0)
+ {
+ writer.writeElement("description", _descriptor.description);
+ }
+ writeDbProperties(writer, _descriptor.properties);
+ writer.writeEndTag("dbenv");
+ }
+ }
}
private DbEnvDescriptor _descriptor;
diff --git a/java/src/IceGridGUI/Application/DbEnvEditor.java b/java/src/IceGridGUI/Application/DbEnvEditor.java
index 9ff7b6a47bb..b937cd96ba8 100755
--- a/java/src/IceGridGUI/Application/DbEnvEditor.java
+++ b/java/src/IceGridGUI/Application/DbEnvEditor.java
@@ -28,160 +28,160 @@ class DbEnvEditor extends CommunicatorChildEditor
{
DbEnvEditor()
{
- _name.getDocument().addDocumentListener(_updateListener);
- _name.setToolTipText(
- "Identifies this Freeze database environment within an Ice communicator");
- _description.getDocument().addDocumentListener(_updateListener);
- _description.setToolTipText(
- "An optional description for this database environment");
-
- JTextField dbHomeTextField = (JTextField)
- _dbHome.getEditor().getEditorComponent();
- dbHomeTextField.getDocument().addDocumentListener(_updateListener);
- _dbHome.setToolTipText("<html><i>node data dir</i>/servers/<i>server id</i>"
- + "/dbs/<i>db env name</i> if created by the IceGrid Node;<br>"
- + "otherwise, IceGrid does not create this directory"
- + "</html>");
-
- _properties = new PropertiesField(this);
+ _name.getDocument().addDocumentListener(_updateListener);
+ _name.setToolTipText(
+ "Identifies this Freeze database environment within an Ice communicator");
+ _description.getDocument().addDocumentListener(_updateListener);
+ _description.setToolTipText(
+ "An optional description for this database environment");
+
+ JTextField dbHomeTextField = (JTextField)
+ _dbHome.getEditor().getEditorComponent();
+ dbHomeTextField.getDocument().addDocumentListener(_updateListener);
+ _dbHome.setToolTipText("<html><i>node data dir</i>/servers/<i>server id</i>"
+ + "/dbs/<i>db env name</i> if created by the IceGrid Node;<br>"
+ + "otherwise, IceGrid does not create this directory"
+ + "</html>");
+
+ _properties = new PropertiesField(this);
}
void writeDescriptor()
{
- DbEnvDescriptor descriptor =
- (DbEnvDescriptor)getDbEnv().getDescriptor();
- descriptor.name = _name.getText().trim();
- descriptor.description = _description.getText();
- descriptor.dbHome = getDbHomeAsString();
- descriptor.properties = _properties.getProperties();
- }
+ DbEnvDescriptor descriptor =
+ (DbEnvDescriptor)getDbEnv().getDescriptor();
+ descriptor.name = _name.getText().trim();
+ descriptor.description = _description.getText();
+ descriptor.dbHome = getDbHomeAsString();
+ descriptor.properties = _properties.getProperties();
+ }
boolean isSimpleUpdate()
{
- DbEnvDescriptor descriptor =
- (DbEnvDescriptor)getDbEnv().getDescriptor();
- return descriptor.name.equals(_name.getText().trim());
+ DbEnvDescriptor descriptor =
+ (DbEnvDescriptor)getDbEnv().getDescriptor();
+ return descriptor.name.equals(_name.getText().trim());
}
Communicator.ChildList getChildList()
{
- return ((Communicator)_target.getParent()).getDbEnvs();
+ return ((Communicator)_target.getParent()).getDbEnvs();
}
protected void appendProperties(DefaultFormBuilder builder)
{
- builder.append("Name" );
- builder.append(_name, 3);
- builder.nextLine();
-
- builder.append("Description");
- builder.nextLine();
- builder.append("");
- builder.nextRow(-2);
- CellConstraints cc = new CellConstraints();
- JScrollPane scrollPane = new JScrollPane(_description);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 3));
- builder.nextRow(2);
- builder.nextLine();
-
- builder.append("DB Home" );
- builder.append(_dbHome, 3);
- builder.nextLine();
-
- builder.append("Properties");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
-
- builder.nextLine();
- builder.append("");
-
- builder.nextRow(-6);
- scrollPane = new JScrollPane(_properties);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
- builder.nextRow(6);
- builder.nextLine();
+ builder.append("Name" );
+ builder.append(_name, 3);
+ builder.nextLine();
+
+ builder.append("Description");
+ builder.nextLine();
+ builder.append("");
+ builder.nextRow(-2);
+ CellConstraints cc = new CellConstraints();
+ JScrollPane scrollPane = new JScrollPane(_description);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 3));
+ builder.nextRow(2);
+ builder.nextLine();
+
+ builder.append("DB Home" );
+ builder.append(_dbHome, 3);
+ builder.nextLine();
+
+ builder.append("Properties");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+
+ builder.nextLine();
+ builder.append("");
+
+ builder.nextRow(-6);
+ scrollPane = new JScrollPane(_properties);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
+ builder.nextRow(6);
+ builder.nextLine();
}
protected void buildPropertiesPanel()
{
- super.buildPropertiesPanel();
- _propertiesPanel.setName("Database Environment Properties");
+ super.buildPropertiesPanel();
+ _propertiesPanel.setName("Database Environment Properties");
}
protected boolean validate()
{
- return check(new String[]{"Name", _name.getText().trim()});
+ return check(new String[]{"Name", _name.getText().trim()});
}
void show(DbEnv dbEnv)
{
- detectUpdates(false);
- _target = dbEnv;
-
- DbEnvDescriptor descriptor = (DbEnvDescriptor)dbEnv.getDescriptor();
-
- Utils.Resolver resolver = null;
- if(dbEnv.getCoordinator().substitute())
- {
- resolver = dbEnv.getResolver();
- }
- boolean isEditable = resolver == null;
-
- _name.setText(
- Utils.substitute(descriptor.name, resolver));
- _name.setEditable(isEditable);
-
- _description.setText(
- Utils.substitute(descriptor.description, resolver));
- _description.setEditable(isEditable);
- _description.setOpaque(isEditable);
-
- _dbHome.setEnabled(true);
- _dbHome.setEditable(true);
- setDbHome(Utils.substitute(descriptor.dbHome, resolver));
- _dbHome.setEnabled(isEditable);
- _dbHome.setEditable(isEditable);
-
- _properties.setProperties(descriptor.properties, null, null,
- resolver, isEditable);
-
- _applyButton.setEnabled(dbEnv.isEphemeral());
- _discardButton.setEnabled(dbEnv.isEphemeral());
- detectUpdates(true);
+ detectUpdates(false);
+ _target = dbEnv;
+
+ DbEnvDescriptor descriptor = (DbEnvDescriptor)dbEnv.getDescriptor();
+
+ Utils.Resolver resolver = null;
+ if(dbEnv.getCoordinator().substitute())
+ {
+ resolver = dbEnv.getResolver();
+ }
+ boolean isEditable = resolver == null;
+
+ _name.setText(
+ Utils.substitute(descriptor.name, resolver));
+ _name.setEditable(isEditable);
+
+ _description.setText(
+ Utils.substitute(descriptor.description, resolver));
+ _description.setEditable(isEditable);
+ _description.setOpaque(isEditable);
+
+ _dbHome.setEnabled(true);
+ _dbHome.setEditable(true);
+ setDbHome(Utils.substitute(descriptor.dbHome, resolver));
+ _dbHome.setEnabled(isEditable);
+ _dbHome.setEditable(isEditable);
+
+ _properties.setProperties(descriptor.properties, null, null,
+ resolver, isEditable);
+
+ _applyButton.setEnabled(dbEnv.isEphemeral());
+ _discardButton.setEnabled(dbEnv.isEphemeral());
+ detectUpdates(true);
}
private DbEnv getDbEnv()
{
- return (DbEnv)_target;
+ return (DbEnv)_target;
}
private void setDbHome(String dbHome)
{
- if(dbHome.equals(""))
- {
- _dbHome.setSelectedItem(NO_DB_HOME);
- }
- else
- {
- _dbHome.setSelectedItem(dbHome);
- }
+ if(dbHome.equals(""))
+ {
+ _dbHome.setSelectedItem(NO_DB_HOME);
+ }
+ else
+ {
+ _dbHome.setSelectedItem(dbHome);
+ }
}
private String getDbHomeAsString()
{
- Object obj = _dbHome.getSelectedItem();
- if(obj == NO_DB_HOME)
- {
- return "";
- }
- else
- {
- return obj.toString().trim();
- }
+ Object obj = _dbHome.getSelectedItem();
+ if(obj == NO_DB_HOME)
+ {
+ return "";
+ }
+ else
+ {
+ return obj.toString().trim();
+ }
}
private JTextField _name = new JTextField(20);
@@ -191,10 +191,10 @@ class DbEnvEditor extends CommunicatorChildEditor
private PropertiesField _properties;
static private final Object NO_DB_HOME = new Object()
- {
- public String toString()
- {
- return "Created by the IceGrid Node";
- }
- };
+ {
+ public String toString()
+ {
+ return "Created by the IceGrid Node";
+ }
+ };
}
diff --git a/java/src/IceGridGUI/Application/Editable.java b/java/src/IceGridGUI/Application/Editable.java
index 487a7fecdc1..5972ea4d57e 100755
--- a/java/src/IceGridGUI/Application/Editable.java
+++ b/java/src/IceGridGUI/Application/Editable.java
@@ -12,91 +12,91 @@ class Editable implements Cloneable
{
Editable(boolean brandNew)
{
- _isNew = brandNew;
+ _isNew = brandNew;
}
boolean isNew()
{
- return _isNew;
+ return _isNew;
}
boolean isModified()
{
- return _modified;
+ return _modified;
}
void markModified()
{
- _modified = true;
+ _modified = true;
}
void commit()
{
- _isNew = false;
- _modified = false;
- _removedElements.clear();
+ _isNew = false;
+ _modified = false;
+ _removedElements.clear();
}
void markNew()
{
- _isNew = true;
+ _isNew = true;
}
void removeElement(String id, Editable editable, Class forClass)
{
- if(!editable.isNew())
- {
- java.util.TreeSet set = (java.util.TreeSet)_removedElements.get(forClass);
- if(set == null)
- {
- set = new java.util.TreeSet();
- _removedElements.put(forClass, set);
- }
- set.add(id);
- }
+ if(!editable.isNew())
+ {
+ java.util.TreeSet set = (java.util.TreeSet)_removedElements.get(forClass);
+ if(set == null)
+ {
+ set = new java.util.TreeSet();
+ _removedElements.put(forClass, set);
+ }
+ set.add(id);
+ }
}
String[] removedElements(Class forClass)
{
- java.util.TreeSet set = (java.util.TreeSet)_removedElements.get(forClass);
- if(set == null)
- {
- return new String[0];
- }
- else
- {
- return (String[])set.toArray(new String[0]);
- }
+ java.util.TreeSet set = (java.util.TreeSet)_removedElements.get(forClass);
+ if(set == null)
+ {
+ return new String[0];
+ }
+ else
+ {
+ return (String[])set.toArray(new String[0]);
+ }
}
Editable save()
{
- try
- {
- Editable result = (Editable)clone();
- java.util.HashMap removedElements = new java.util.HashMap();
- java.util.Iterator p = result._removedElements.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- Object val = ((java.util.TreeSet)entry.getValue()).clone();
- removedElements.put(entry.getKey(), val);
- }
- result._removedElements = removedElements;
- return result;
- }
- catch(CloneNotSupportedException e)
- {
- assert false;
- return null;
- }
+ try
+ {
+ Editable result = (Editable)clone();
+ java.util.HashMap removedElements = new java.util.HashMap();
+ java.util.Iterator p = result._removedElements.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ Object val = ((java.util.TreeSet)entry.getValue()).clone();
+ removedElements.put(entry.getKey(), val);
+ }
+ result._removedElements = removedElements;
+ return result;
+ }
+ catch(CloneNotSupportedException e)
+ {
+ assert false;
+ return null;
+ }
}
void restore(Editable clone)
{
- _isNew = clone._isNew;
- _modified = clone._modified;
- _removedElements = clone._removedElements;
+ _isNew = clone._isNew;
+ _modified = clone._modified;
+ _removedElements = clone._removedElements;
}
private boolean _isNew = false;
diff --git a/java/src/IceGridGUI/Application/Editor.java b/java/src/IceGridGUI/Application/Editor.java
index dd8cf663e00..cb3308c0111 100755
--- a/java/src/IceGridGUI/Application/Editor.java
+++ b/java/src/IceGridGUI/Application/Editor.java
@@ -39,62 +39,62 @@ import IceGridGUI.*;
public class Editor extends EditorBase
{
static public java.util.Map makeParameterValues(
- java.util.Map oldParameterValues,
- java.util.List newParameters)
+ java.util.Map oldParameterValues,
+ java.util.List newParameters)
{
- java.util.Map result = new java.util.HashMap();
-
- java.util.Iterator p = newParameters.iterator();
- while(p.hasNext())
- {
- Object name = p.next();
- Object value = oldParameterValues.get(name);
- if(value != null)
- {
- result.put(name, value);
- }
- }
- return result;
+ java.util.Map result = new java.util.HashMap();
+
+ java.util.Iterator p = newParameters.iterator();
+ while(p.hasNext())
+ {
+ Object name = p.next();
+ Object value = oldParameterValues.get(name);
+ if(value != null)
+ {
+ result.put(name, value);
+ }
+ }
+ return result;
}
public boolean save(boolean refresh)
{
- if(_applyButton.isEnabled())
- {
- return validate() && applyUpdate(refresh);
- }
- else
- {
- return true;
- }
+ if(_applyButton.isEnabled())
+ {
+ return validate() && applyUpdate(refresh);
+ }
+ else
+ {
+ return true;
+ }
}
protected boolean validate()
{
- return true;
+ return true;
}
protected boolean applyUpdate(boolean refresh)
{
- assert false;
- return false;
+ assert false;
+ return false;
}
protected void detectUpdates(boolean val)
{
- _detectUpdates = val;
+ _detectUpdates = val;
}
protected void discardUpdate()
{
- if(_target.isEphemeral())
- {
- _target.delete();
- }
- else
- {
- _target.getCoordinator().getCurrentTab().showNode(_target);
- }
+ if(_target.isEphemeral())
+ {
+ _target.delete();
+ }
+ else
+ {
+ _target.getCoordinator().getCurrentTab().showNode(_target);
+ }
}
protected void appendProperties(DefaultFormBuilder builder)
@@ -102,67 +102,67 @@ public class Editor extends EditorBase
protected void buildPropertiesPanel()
{
- super.buildPropertiesPanel();
- JComponent buttonBar =
- ButtonBarFactory.buildRightAlignedBar(_applyButton,
- _discardButton);
- buttonBar.setBorder(Borders.DIALOG_BORDER);
- _propertiesPanel.add(buttonBar, BorderLayout.SOUTH);
+ super.buildPropertiesPanel();
+ JComponent buttonBar =
+ ButtonBarFactory.buildRightAlignedBar(_applyButton,
+ _discardButton);
+ buttonBar.setBorder(Borders.DIALOG_BORDER);
+ _propertiesPanel.add(buttonBar, BorderLayout.SOUTH);
}
Editor()
{
- //
- // _applyButton
- //
- AbstractAction apply = new AbstractAction("Apply")
- {
- public void actionPerformed(ActionEvent e)
- {
- if(validate())
- {
- if(applyUpdate(true))
- {
- _target.getRoot().getTree().grabFocus();
- }
- }
- }
- };
- _applyButton = new JButton(apply);
- _applyButton.setEnabled(false);
-
- //
- // _discardButton
- //
- AbstractAction discard = new AbstractAction("Discard")
- {
- public void actionPerformed(ActionEvent e)
- {
- discardUpdate();
- _target.getRoot().getTree().grabFocus();
- }
- };
- _discardButton = new JButton(discard);
- _discardButton.setEnabled(false);
-
- _updateListener = new DocumentListener()
- {
- public void changedUpdate(DocumentEvent e)
- {
- updated();
- }
-
- public void insertUpdate(DocumentEvent e)
- {
- updated();
- }
-
- public void removeUpdate(DocumentEvent e)
- {
- updated();
- }
- };
+ //
+ // _applyButton
+ //
+ AbstractAction apply = new AbstractAction("Apply")
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ if(validate())
+ {
+ if(applyUpdate(true))
+ {
+ _target.getRoot().getTree().grabFocus();
+ }
+ }
+ }
+ };
+ _applyButton = new JButton(apply);
+ _applyButton.setEnabled(false);
+
+ //
+ // _discardButton
+ //
+ AbstractAction discard = new AbstractAction("Discard")
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ discardUpdate();
+ _target.getRoot().getTree().grabFocus();
+ }
+ };
+ _discardButton = new JButton(discard);
+ _discardButton.setEnabled(false);
+
+ _updateListener = new DocumentListener()
+ {
+ public void changedUpdate(DocumentEvent e)
+ {
+ updated();
+ }
+
+ public void insertUpdate(DocumentEvent e)
+ {
+ updated();
+ }
+
+ public void removeUpdate(DocumentEvent e)
+ {
+ updated();
+ }
+ };
}
//
@@ -170,32 +170,32 @@ public class Editor extends EditorBase
//
Object getSubDescriptor()
{
- return null;
+ return null;
}
Utils.Resolver getDetailResolver()
{
- return null;
+ return null;
}
public TreeNode getTarget()
{
- return _target;
+ return _target;
}
void updated()
{
- if(_detectUpdates)
- {
- _target.getRoot().disableRegistryUpdates();
- _applyButton.setEnabled(true);
- _discardButton.setEnabled(true);
- }
+ if(_detectUpdates)
+ {
+ _target.getRoot().disableRegistryUpdates();
+ _applyButton.setEnabled(true);
+ _discardButton.setEnabled(true);
+ }
}
DocumentListener getUpdateListener()
{
- return _updateListener;
+ return _updateListener;
}
//
@@ -203,36 +203,36 @@ public class Editor extends EditorBase
//
boolean check(String[] nameValArray)
{
- String emptyFields = "";
- int errorCount = 0;
-
- for(int i = 1; i < nameValArray.length; i += 2)
- {
- if(nameValArray[i] == null || nameValArray[i].length() == 0)
- {
- errorCount++;
- if(emptyFields.length() > 0)
- {
- emptyFields += "\n";
- }
- emptyFields += "'" + nameValArray[i - 1] + "'";
- }
- }
-
- if(errorCount > 0)
- {
- String message = errorCount == 1 ?
- emptyFields + " cannot be empty" :
- "The following fields cannot be empty:\n" + emptyFields;
-
- JOptionPane.showMessageDialog(
- _target.getCoordinator().getMainFrame(),
- message,
- "Validation failed",
- JOptionPane.ERROR_MESSAGE);
- }
-
- return errorCount == 0;
+ String emptyFields = "";
+ int errorCount = 0;
+
+ for(int i = 1; i < nameValArray.length; i += 2)
+ {
+ if(nameValArray[i] == null || nameValArray[i].length() == 0)
+ {
+ errorCount++;
+ if(emptyFields.length() > 0)
+ {
+ emptyFields += "\n";
+ }
+ emptyFields += "'" + nameValArray[i - 1] + "'";
+ }
+ }
+
+ if(errorCount > 0)
+ {
+ String message = errorCount == 1 ?
+ emptyFields + " cannot be empty" :
+ "The following fields cannot be empty:\n" + emptyFields;
+
+ JOptionPane.showMessageDialog(
+ _target.getCoordinator().getMainFrame(),
+ message,
+ "Validation failed",
+ JOptionPane.ERROR_MESSAGE);
+ }
+
+ return errorCount == 0;
}
protected JButton _applyButton;
diff --git a/java/src/IceGridGUI/Application/ListTextField.java b/java/src/IceGridGUI/Application/ListTextField.java
index 86efdd6ef99..e82a6564cf8 100755
--- a/java/src/IceGridGUI/Application/ListTextField.java
+++ b/java/src/IceGridGUI/Application/ListTextField.java
@@ -22,58 +22,58 @@ public class ListTextField extends JTextField
{
public ListTextField(int columns)
{
- super(columns);
+ super(columns);
}
public void setList(java.util.List list, final Utils.Resolver resolver)
{
- Utils.Stringifier stringifier = new Utils.Stringifier()
- {
- public String toString(Object obj)
- {
- return Utils.substitute((String)obj, resolver);
- }
- };
-
- setText(Utils.stringify(list, stringifier, " ", null));
+ Utils.Stringifier stringifier = new Utils.Stringifier()
+ {
+ public String toString(Object obj)
+ {
+ return Utils.substitute((String)obj, resolver);
+ }
+ };
+
+ setText(Utils.stringify(list, stringifier, " ", null));
}
public java.util.LinkedList getList()
{
- String text = getText().trim();
- java.util.LinkedList result = new java.util.LinkedList();
+ String text = getText().trim();
+ java.util.LinkedList result = new java.util.LinkedList();
- while(text.length() > 0)
- {
- if(text.startsWith("\""))
- {
- int last = text.indexOf("\"", 1);
- if(last == -1)
- {
- result.add(text.substring(1));
- text = "";
- }
- else
- {
- result.add(text.substring(1, last));
- text = text.substring(last + 1).trim();
- }
- }
- else
- {
- String[] strings = text.split("\\s", 2);
- if(strings.length == 1)
- {
- result.add(strings[0]);
- text = "";
- }
- else
- {
- result.add(strings[0]);
- text = strings[1].trim();
- }
- }
- }
- return result;
+ while(text.length() > 0)
+ {
+ if(text.startsWith("\""))
+ {
+ int last = text.indexOf("\"", 1);
+ if(last == -1)
+ {
+ result.add(text.substring(1));
+ text = "";
+ }
+ else
+ {
+ result.add(text.substring(1, last));
+ text = text.substring(last + 1).trim();
+ }
+ }
+ else
+ {
+ String[] strings = text.split("\\s", 2);
+ if(strings.length == 1)
+ {
+ result.add(strings[0]);
+ text = "";
+ }
+ else
+ {
+ result.add(strings[0]);
+ text = strings[1].trim();
+ }
+ }
+ }
+ return result;
}
}
diff --git a/java/src/IceGridGUI/Application/ListTreeNode.java b/java/src/IceGridGUI/Application/ListTreeNode.java
index 90fec250fc8..4b5fa7f5370 100755
--- a/java/src/IceGridGUI/Application/ListTreeNode.java
+++ b/java/src/IceGridGUI/Application/ListTreeNode.java
@@ -22,214 +22,214 @@ abstract class ListTreeNode extends TreeNode
{
public Enumeration children()
{
- return new Enumeration()
- {
- public boolean hasMoreElements()
- {
- return _p.hasNext();
- }
-
- public Object nextElement()
- {
- return _p.next();
- }
-
- private java.util.Iterator _p = _children.iterator();
- };
+ return new Enumeration()
+ {
+ public boolean hasMoreElements()
+ {
+ return _p.hasNext();
+ }
+
+ public Object nextElement()
+ {
+ return _p.next();
+ }
+
+ private java.util.Iterator _p = _children.iterator();
+ };
}
public boolean getAllowsChildren()
{
- return true;
+ return true;
}
public javax.swing.tree.TreeNode getChildAt(int childIndex)
{
- if(childIndex < 0)
- {
- throw new ArrayIndexOutOfBoundsException(childIndex);
- }
- else if(childIndex < _children.size())
- {
- return (javax.swing.tree.TreeNode)_children.get(childIndex);
- }
- else
- {
- throw new ArrayIndexOutOfBoundsException(childIndex);
- }
+ if(childIndex < 0)
+ {
+ throw new ArrayIndexOutOfBoundsException(childIndex);
+ }
+ else if(childIndex < _children.size())
+ {
+ return (javax.swing.tree.TreeNode)_children.get(childIndex);
+ }
+ else
+ {
+ throw new ArrayIndexOutOfBoundsException(childIndex);
+ }
}
public int getChildCount()
{
- return _children.size();
+ return _children.size();
}
public int getIndex(javax.swing.tree.TreeNode node)
{
- return _children.indexOf(node);
+ return _children.indexOf(node);
}
public boolean isLeaf()
{
- return _children.isEmpty();
+ return _children.isEmpty();
}
public Editor getEditor()
{
- if(_editor == null)
- {
- _editor = new Editor();
- }
- return _editor;
+ if(_editor == null)
+ {
+ _editor = new Editor();
+ }
+ return _editor;
}
protected Editor createEditor()
{
- assert false;
- return null;
+ assert false;
+ return null;
}
protected ListTreeNode(boolean brandNew, TreeNode parent, String id)
{
- super(parent, id);
- _editable = new Editable(brandNew);
+ super(parent, id);
+ _editable = new Editable(brandNew);
}
void write(XMLWriter writer) throws java.io.IOException
{
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- TreeNode node = (TreeNode)p.next();
- node.write(writer);
- }
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ TreeNode node = (TreeNode)p.next();
+ node.write(writer);
+ }
}
void insertChild(TreeNode child, boolean fireEvent)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- DefaultTreeModel treeModel = fireEvent ?
- getRoot().getTreeModel() : null;
-
- if(!insertSortedChild(child, _children, treeModel))
- {
- throw new UpdateFailedException(this, child.getId());
- }
+ DefaultTreeModel treeModel = fireEvent ?
+ getRoot().getTreeModel() : null;
+
+ if(!insertSortedChild(child, _children, treeModel))
+ {
+ throw new UpdateFailedException(this, child.getId());
+ }
}
void insertChildren(java.util.List newChildren, boolean fireEvent)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- DefaultTreeModel treeModel = fireEvent ?
- getRoot().getTreeModel() : null;
-
- String badChildId = insertSortedChildren(newChildren, _children, treeModel);
-
- if(badChildId != null)
- {
- throw new UpdateFailedException(this, badChildId);
- }
+ DefaultTreeModel treeModel = fireEvent ?
+ getRoot().getTreeModel() : null;
+
+ String badChildId = insertSortedChildren(newChildren, _children, treeModel);
+
+ if(badChildId != null)
+ {
+ throw new UpdateFailedException(this, badChildId);
+ }
}
int removeChild(TreeNode child)
{
- int index = getIndex(child);
- _children.remove(child);
-
- getRoot().getTreeModel().nodesWereRemoved(this,
- new int[]{index},
- new Object[]{child});
- return index;
+ int index = getIndex(child);
+ _children.remove(child);
+
+ getRoot().getTreeModel().nodesWereRemoved(this,
+ new int[]{index},
+ new Object[]{child});
+ return index;
}
void removeChildren(String[] childIds)
{
- removeSortedChildren(childIds, _children, getRoot().getTreeModel());
+ removeSortedChildren(childIds, _children, getRoot().getTreeModel());
}
void childrenChanged(java.util.List children)
{
- childrenChanged(children, getRoot().getTreeModel());
+ childrenChanged(children, getRoot().getTreeModel());
}
Editable getEditable()
{
- return _editable;
+ return _editable;
}
javax.swing.ComboBoxModel createComboBoxModel()
{
- return new ComboBoxModel();
+ return new ComboBoxModel();
}
javax.swing.ComboBoxModel createComboBoxModel(Object item)
{
- return new ComboBoxModel(item);
+ return new ComboBoxModel(item);
}
//
// Adapts ListTreeNode to a ComboBoxModel
//
class ComboBoxModel extends javax.swing.AbstractListModel
- implements javax.swing.ComboBoxModel
- {
- public Object getElementAt(int index)
- {
- if(_firstItem != null)
- {
- if(index == 0)
- {
- return _firstItem;
- }
- else
- {
- return getChildAt(index - 1);
- }
- }
- else
- {
- return getChildAt(index);
- }
- }
-
- public int getSize()
- {
- if(_firstItem != null)
- {
- return getChildCount() + 1;
- }
- else
- {
- return getChildCount();
- }
- }
-
- public Object getSelectedItem()
- {
- return _selectedItem;
- }
-
- public void setSelectedItem(Object obj)
- {
- if(obj != _selectedItem)
- {
- _selectedItem = obj;
- fireContentsChanged(this, -1, -1);
- }
- }
-
- ComboBoxModel(Object firstItem)
- {
- _firstItem = firstItem;
- }
-
- ComboBoxModel()
- {
- _firstItem = null;
- }
-
- private final Object _firstItem;
- private Object _selectedItem;
+ implements javax.swing.ComboBoxModel
+ {
+ public Object getElementAt(int index)
+ {
+ if(_firstItem != null)
+ {
+ if(index == 0)
+ {
+ return _firstItem;
+ }
+ else
+ {
+ return getChildAt(index - 1);
+ }
+ }
+ else
+ {
+ return getChildAt(index);
+ }
+ }
+
+ public int getSize()
+ {
+ if(_firstItem != null)
+ {
+ return getChildCount() + 1;
+ }
+ else
+ {
+ return getChildCount();
+ }
+ }
+
+ public Object getSelectedItem()
+ {
+ return _selectedItem;
+ }
+
+ public void setSelectedItem(Object obj)
+ {
+ if(obj != _selectedItem)
+ {
+ _selectedItem = obj;
+ fireContentsChanged(this, -1, -1);
+ }
+ }
+
+ ComboBoxModel(Object firstItem)
+ {
+ _firstItem = firstItem;
+ }
+
+ ComboBoxModel()
+ {
+ _firstItem = null;
+ }
+
+ private final Object _firstItem;
+ private Object _selectedItem;
}
protected final java.util.LinkedList _children = new java.util.LinkedList();
diff --git a/java/src/IceGridGUI/Application/MapField.java b/java/src/IceGridGUI/Application/MapField.java
index f5bc7cf7f2d..0966b6f6e83 100755
--- a/java/src/IceGridGUI/Application/MapField.java
+++ b/java/src/IceGridGUI/Application/MapField.java
@@ -32,198 +32,198 @@ public class MapField extends JTable
{
public MapField(Editor editor, String headKey, String[] headValues, boolean substituteKey)
{
- _editor = editor;
- _substituteKey = substituteKey;
- _vectorSize = headValues.length + 1;
-
- _columnNames = new java.util.Vector(_vectorSize);
- _columnNames.add(headKey);
- for(int i = 0; i < headValues.length; ++i)
- {
- _columnNames.add(headValues[i]);
- }
-
- assert _vectorSize >= 2;
-
- Action deleteRow = new AbstractAction("Delete selected row(s)")
- {
- public void actionPerformed(ActionEvent e)
- {
- if(_editable)
- {
- if(isEditing())
- {
- getCellEditor().stopCellEditing();
- }
-
- for(;;)
- {
- int selectedRow = getSelectedRow();
- if(selectedRow == -1)
- {
- break;
- }
- else
- {
- _model.removeRow(selectedRow);
- }
- }
- }
- }
- };
- getActionMap().put("delete", deleteRow);
- getInputMap().put(
- KeyStroke.getKeyStroke("DELETE"), "delete");
+ _editor = editor;
+ _substituteKey = substituteKey;
+ _vectorSize = headValues.length + 1;
+
+ _columnNames = new java.util.Vector(_vectorSize);
+ _columnNames.add(headKey);
+ for(int i = 0; i < headValues.length; ++i)
+ {
+ _columnNames.add(headValues[i]);
+ }
+
+ assert _vectorSize >= 2;
+
+ Action deleteRow = new AbstractAction("Delete selected row(s)")
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ if(_editable)
+ {
+ if(isEditing())
+ {
+ getCellEditor().stopCellEditing();
+ }
+
+ for(;;)
+ {
+ int selectedRow = getSelectedRow();
+ if(selectedRow == -1)
+ {
+ break;
+ }
+ else
+ {
+ _model.removeRow(selectedRow);
+ }
+ }
+ }
+ }
+ };
+ getActionMap().put("delete", deleteRow);
+ getInputMap().put(
+ KeyStroke.getKeyStroke("DELETE"), "delete");
}
public MapField(Editor editor, String headKey, String headValue, boolean substituteKey)
{
- this(editor, headKey, new String[]{headValue}, substituteKey);
+ this(editor, headKey, new String[]{headValue}, substituteKey);
}
public void set(java.util.Map map, Utils.Resolver resolver,
- boolean editable)
+ boolean editable)
{
- _editable = editable;
-
- //
- // Transform map into vector of vectors
- //
- java.util.Vector vector = new java.util.Vector(map.size());
- java.util.Iterator p = map.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Vector row = new java.util.Vector(_vectorSize);
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
-
- if(_substituteKey)
- {
- row.add(Utils.substitute((String)entry.getKey(), resolver));
- }
- else
- {
- row.add((String)entry.getKey());
- }
-
- if(_vectorSize == 2)
- {
- row.add(Utils.substitute((String)entry.getValue(), resolver));
- }
- else
- {
- String[] val = (String[])entry.getValue();
-
- for(int i = 0; i < val.length; ++i)
- {
- row.add(Utils.substitute(val[i], resolver));
- }
- }
- vector.add(row);
- }
-
- if(_editable)
- {
- java.util.Vector newRow = new java.util.Vector(_vectorSize);
- for(int i = 0; i < _vectorSize; ++i)
- {
- newRow.add("");
- }
- vector.add(newRow);
- }
-
- _model = new DefaultTableModel(vector, _columnNames)
- {
- public boolean isCellEditable(int row, int column)
- {
- return _editable;
- }
- };
-
- _model.addTableModelListener(new TableModelListener()
- {
- public void tableChanged(TableModelEvent e)
- {
- if(_editable)
- {
- Object lastKey = _model.getValueAt(
- _model.getRowCount() - 1 , 0);
- if(lastKey != null && !lastKey.equals(""))
- {
- Object[] emptyRow = new Object[_vectorSize];
- for(int i = 0; i < _vectorSize; ++i)
- {
- emptyRow[i] = "";
- }
- _model.addRow(emptyRow);
- }
- _editor.updated();
- }
- }
- });
- setModel(_model);
-
- setCellSelectionEnabled(_editable);
- setOpaque(_editable);
- setPreferredScrollableViewportSize(getPreferredSize());
-
- DefaultTableCellRenderer cr = (DefaultTableCellRenderer)
- getDefaultRenderer(String.class);
- cr.setOpaque(_editable);
+ _editable = editable;
+
+ //
+ // Transform map into vector of vectors
+ //
+ java.util.Vector vector = new java.util.Vector(map.size());
+ java.util.Iterator p = map.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Vector row = new java.util.Vector(_vectorSize);
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+
+ if(_substituteKey)
+ {
+ row.add(Utils.substitute((String)entry.getKey(), resolver));
+ }
+ else
+ {
+ row.add((String)entry.getKey());
+ }
+
+ if(_vectorSize == 2)
+ {
+ row.add(Utils.substitute((String)entry.getValue(), resolver));
+ }
+ else
+ {
+ String[] val = (String[])entry.getValue();
+
+ for(int i = 0; i < val.length; ++i)
+ {
+ row.add(Utils.substitute(val[i], resolver));
+ }
+ }
+ vector.add(row);
+ }
+
+ if(_editable)
+ {
+ java.util.Vector newRow = new java.util.Vector(_vectorSize);
+ for(int i = 0; i < _vectorSize; ++i)
+ {
+ newRow.add("");
+ }
+ vector.add(newRow);
+ }
+
+ _model = new DefaultTableModel(vector, _columnNames)
+ {
+ public boolean isCellEditable(int row, int column)
+ {
+ return _editable;
+ }
+ };
+
+ _model.addTableModelListener(new TableModelListener()
+ {
+ public void tableChanged(TableModelEvent e)
+ {
+ if(_editable)
+ {
+ Object lastKey = _model.getValueAt(
+ _model.getRowCount() - 1 , 0);
+ if(lastKey != null && !lastKey.equals(""))
+ {
+ Object[] emptyRow = new Object[_vectorSize];
+ for(int i = 0; i < _vectorSize; ++i)
+ {
+ emptyRow[i] = "";
+ }
+ _model.addRow(emptyRow);
+ }
+ _editor.updated();
+ }
+ }
+ });
+ setModel(_model);
+
+ setCellSelectionEnabled(_editable);
+ setOpaque(_editable);
+ setPreferredScrollableViewportSize(getPreferredSize());
+
+ DefaultTableCellRenderer cr = (DefaultTableCellRenderer)
+ getDefaultRenderer(String.class);
+ cr.setOpaque(_editable);
}
public java.util.TreeMap get()
{
- assert _editable;
-
- if(isEditing())
- {
- getCellEditor().stopCellEditing();
- }
- java.util.Vector vector = _model.getDataVector();
-
- java.util.TreeMap result = new java.util.TreeMap();
-
- java.util.Iterator p = vector.iterator();
- while(p.hasNext())
- {
- java.util.Vector row = (java.util.Vector)p.next();
-
- //
- // Eliminate rows with null or empty keys
- //
- String key = (String)row.elementAt(0);
- if(key != null)
- {
- key = key.trim();
- if(!key.equals(""))
- {
- if(_vectorSize == 2)
- {
- String val = (String)row.elementAt(1);
- if(val == null)
- {
- val = "";
- }
- result.put(key, val);
- }
- else
- {
- String[] val = new String[_vectorSize - 1];
- for(int i = 1; i < _vectorSize; ++i)
- {
- val[i - 1] = (String)row.elementAt(i);
- if(val[i - 1] == null)
- {
- val[i - 1] = "";
- }
- }
- result.put(key, val);
- }
- }
- }
- }
- return result;
+ assert _editable;
+
+ if(isEditing())
+ {
+ getCellEditor().stopCellEditing();
+ }
+ java.util.Vector vector = _model.getDataVector();
+
+ java.util.TreeMap result = new java.util.TreeMap();
+
+ java.util.Iterator p = vector.iterator();
+ while(p.hasNext())
+ {
+ java.util.Vector row = (java.util.Vector)p.next();
+
+ //
+ // Eliminate rows with null or empty keys
+ //
+ String key = (String)row.elementAt(0);
+ if(key != null)
+ {
+ key = key.trim();
+ if(!key.equals(""))
+ {
+ if(_vectorSize == 2)
+ {
+ String val = (String)row.elementAt(1);
+ if(val == null)
+ {
+ val = "";
+ }
+ result.put(key, val);
+ }
+ else
+ {
+ String[] val = new String[_vectorSize - 1];
+ for(int i = 1; i < _vectorSize; ++i)
+ {
+ val[i - 1] = (String)row.elementAt(i);
+ if(val[i - 1] == null)
+ {
+ val[i - 1] = "";
+ }
+ }
+ result.put(key, val);
+ }
+ }
+ }
+ }
+ return result;
}
private final int _vectorSize;
diff --git a/java/src/IceGridGUI/Application/Node.java b/java/src/IceGridGUI/Application/Node.java
index 6d82d32731a..1260456a360 100755
--- a/java/src/IceGridGUI/Application/Node.java
+++ b/java/src/IceGridGUI/Application/Node.java
@@ -30,437 +30,437 @@ class Node extends TreeNode implements PropertySetParent
static public NodeDescriptor
copyDescriptor(NodeDescriptor nd)
{
- NodeDescriptor copy = (NodeDescriptor)nd.clone();
-
- copy.propertySets = PropertySets.copyDescriptors(copy.propertySets);
-
-
- copy.serverInstances = new java.util.LinkedList();
- java.util.Iterator p = nd.serverInstances.iterator();
- while(p.hasNext())
- {
- copy.serverInstances.add(ServerInstance.copyDescriptor(
- (ServerInstanceDescriptor)p.next()));
- }
+ NodeDescriptor copy = (NodeDescriptor)nd.clone();
+
+ copy.propertySets = PropertySets.copyDescriptors(copy.propertySets);
+
+
+ copy.serverInstances = new java.util.LinkedList();
+ java.util.Iterator p = nd.serverInstances.iterator();
+ while(p.hasNext())
+ {
+ copy.serverInstances.add(ServerInstance.copyDescriptor(
+ (ServerInstanceDescriptor)p.next()));
+ }
- copy.servers = new java.util.LinkedList();
- p = nd.servers.iterator();
- while(p.hasNext())
- {
- copy.servers.add(PlainServer.copyDescriptor(
- (ServerDescriptor)p.next()));
- }
-
- return copy;
+ copy.servers = new java.util.LinkedList();
+ p = nd.servers.iterator();
+ while(p.hasNext())
+ {
+ copy.servers.add(PlainServer.copyDescriptor(
+ (ServerDescriptor)p.next()));
+ }
+
+ return copy;
}
public Enumeration children()
{
- return new Enumeration()
- {
- public boolean hasMoreElements()
- {
- if(!_p.hasNext())
- {
- if(!_iteratingOverServers)
- {
- _p = _servers.iterator();
- _iteratingOverServers = true;
- return _p.hasNext();
- }
- return false;
- }
- return true;
- }
-
- public Object nextElement()
- {
- return _p.next();
- }
-
- private java.util.Iterator _p = _propertySets.iterator();
- private boolean _iteratingOverServers = false;
- };
+ return new Enumeration()
+ {
+ public boolean hasMoreElements()
+ {
+ if(!_p.hasNext())
+ {
+ if(!_iteratingOverServers)
+ {
+ _p = _servers.iterator();
+ _iteratingOverServers = true;
+ return _p.hasNext();
+ }
+ return false;
+ }
+ return true;
+ }
+
+ public Object nextElement()
+ {
+ return _p.next();
+ }
+
+ private java.util.Iterator _p = _propertySets.iterator();
+ private boolean _iteratingOverServers = false;
+ };
}
public boolean getAllowsChildren()
{
- return true;
+ return true;
}
public javax.swing.tree.TreeNode getChildAt(int childIndex)
{
- if(childIndex < 0)
- {
- throw new ArrayIndexOutOfBoundsException(childIndex);
- }
- else if(childIndex < _propertySets.size())
- {
- return (javax.swing.tree.TreeNode)_propertySets.get(childIndex);
- }
- else if(childIndex < (_propertySets.size() + _servers.size()))
- {
- return (javax.swing.tree.TreeNode)_servers.get(
- childIndex - _propertySets.size());
- }
- else
- {
- throw new ArrayIndexOutOfBoundsException(childIndex);
- }
+ if(childIndex < 0)
+ {
+ throw new ArrayIndexOutOfBoundsException(childIndex);
+ }
+ else if(childIndex < _propertySets.size())
+ {
+ return (javax.swing.tree.TreeNode)_propertySets.get(childIndex);
+ }
+ else if(childIndex < (_propertySets.size() + _servers.size()))
+ {
+ return (javax.swing.tree.TreeNode)_servers.get(
+ childIndex - _propertySets.size());
+ }
+ else
+ {
+ throw new ArrayIndexOutOfBoundsException(childIndex);
+ }
}
public int getChildCount()
{
- return _propertySets.size() + _servers.size();
+ return _propertySets.size() + _servers.size();
}
public int getIndex(javax.swing.tree.TreeNode node)
{
- if(node instanceof PropertySet)
- {
- return _propertySets.indexOf(node);
- }
- else
- {
- int index = _servers.indexOf(node);
- if(index != -1)
- {
- index += _propertySets.size();
- }
- return index;
- }
+ if(node instanceof PropertySet)
+ {
+ return _propertySets.indexOf(node);
+ }
+ else
+ {
+ int index = _servers.indexOf(node);
+ if(index != -1)
+ {
+ index += _propertySets.size();
+ }
+ return index;
+ }
}
public boolean isLeaf()
{
- return _propertySets.isEmpty() && _servers.isEmpty();
+ return _propertySets.isEmpty() && _servers.isEmpty();
}
void removeServers(String[] childIds)
{
- removeSortedChildren(childIds, _servers, getRoot().getTreeModel());
+ removeSortedChildren(childIds, _servers, getRoot().getTreeModel());
}
void removePropertySets(String[] childIds)
{
- removeSortedChildren(childIds, _propertySets, getRoot().getTreeModel());
+ removeSortedChildren(childIds, _propertySets, getRoot().getTreeModel());
}
void childrenChanged(java.util.List children)
{
- childrenChanged(children, getRoot().getTreeModel());
+ childrenChanged(children, getRoot().getTreeModel());
}
Server findServer(String id)
{
- return (Server)find(id, _servers);
+ return (Server)find(id, _servers);
}
PropertySet findPropertySet(String id)
{
- return (PropertySet)find(id, _propertySets);
+ return (PropertySet)find(id, _propertySets);
}
void insertPropertySets(java.util.List newChildren, boolean fireEvent)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- DefaultTreeModel treeModel = fireEvent ?
- getRoot().getTreeModel() : null;
-
- String badChildId = insertSortedChildren(newChildren, _propertySets, treeModel);
-
- if(badChildId != null)
- {
- throw new UpdateFailedException(this, badChildId);
- }
+ DefaultTreeModel treeModel = fireEvent ?
+ getRoot().getTreeModel() : null;
+
+ String badChildId = insertSortedChildren(newChildren, _propertySets, treeModel);
+
+ if(badChildId != null)
+ {
+ throw new UpdateFailedException(this, badChildId);
+ }
}
void insertServer(TreeNode child, boolean fireEvent)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- DefaultTreeModel treeModel = fireEvent ?
- getRoot().getTreeModel() : null;
-
- if(!insertSortedChild(child, _servers, treeModel))
- {
- throw new UpdateFailedException(this, child.getId());
- }
+ DefaultTreeModel treeModel = fireEvent ?
+ getRoot().getTreeModel() : null;
+
+ if(!insertSortedChild(child, _servers, treeModel))
+ {
+ throw new UpdateFailedException(this, child.getId());
+ }
}
void insertServers(java.util.List newChildren, boolean fireEvent)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- DefaultTreeModel treeModel = fireEvent ?
- getRoot().getTreeModel() : null;
-
- String badChildId = insertSortedChildren(newChildren, _servers, treeModel);
-
- if(badChildId != null)
- {
- throw new UpdateFailedException(this, badChildId);
- }
+ DefaultTreeModel treeModel = fireEvent ?
+ getRoot().getTreeModel() : null;
+
+ String badChildId = insertSortedChildren(newChildren, _servers, treeModel);
+
+ if(badChildId != null)
+ {
+ throw new UpdateFailedException(this, badChildId);
+ }
}
void removeServer(TreeNode child)
{
- int index = getIndex(child);
- _servers.remove(child);
-
- getRoot().getTreeModel().nodesWereRemoved(this,
- new int[]{index},
- new Object[]{child});
+ int index = getIndex(child);
+ _servers.remove(child);
+
+ getRoot().getTreeModel().nodesWereRemoved(this,
+ new int[]{index},
+ new Object[]{child});
}
public void insertPropertySet(PropertySet child, boolean fireEvent)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- DefaultTreeModel treeModel = fireEvent ?
- getRoot().getTreeModel() : null;
-
- if(!insertSortedChild(child, _propertySets, treeModel))
- {
- throw new UpdateFailedException(this, child.getId());
- }
+ DefaultTreeModel treeModel = fireEvent ?
+ getRoot().getTreeModel() : null;
+
+ if(!insertSortedChild(child, _propertySets, treeModel))
+ {
+ throw new UpdateFailedException(this, child.getId());
+ }
}
public void removePropertySet(PropertySet child)
{
- int index = getIndex(child);
- _propertySets.remove(child);
-
- getRoot().getTreeModel().nodesWereRemoved(this,
- new int[]{index},
- new Object[]{child});
+ int index = getIndex(child);
+ _propertySets.remove(child);
+
+ getRoot().getTreeModel().nodesWereRemoved(this,
+ new int[]{index},
+ new Object[]{child});
}
public void removeDescriptor(String id)
{
- _descriptor.propertySets.remove(id);
+ _descriptor.propertySets.remove(id);
}
public Editable getEditable()
{
- return _editable;
+ return _editable;
}
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
-
- actions[COPY] = !_ephemeral;
- actions[DELETE] = true;
-
- Object descriptor = getCoordinator().getClipboard();
- if(descriptor != null)
- {
- actions[PASTE] = descriptor instanceof NodeDescriptor ||
- descriptor instanceof ServerInstanceDescriptor ||
- descriptor instanceof ServerDescriptor ||
- descriptor instanceof PropertySetDescriptor;
- }
-
- if(!_ephemeral)
- {
- actions[SHOW_VARS] = true;
- actions[SUBSTITUTE_VARS] = true;
- actions[NEW_PROPERTY_SET] = true;
- actions[NEW_SERVER] = true;
- actions[NEW_SERVER_ICEBOX] = true;
- actions[NEW_SERVER_FROM_TEMPLATE] = true;
- }
- return actions;
+ boolean[] actions = new boolean[ACTION_COUNT];
+
+ actions[COPY] = !_ephemeral;
+ actions[DELETE] = true;
+
+ Object descriptor = getCoordinator().getClipboard();
+ if(descriptor != null)
+ {
+ actions[PASTE] = descriptor instanceof NodeDescriptor ||
+ descriptor instanceof ServerInstanceDescriptor ||
+ descriptor instanceof ServerDescriptor ||
+ descriptor instanceof PropertySetDescriptor;
+ }
+
+ if(!_ephemeral)
+ {
+ actions[SHOW_VARS] = true;
+ actions[SUBSTITUTE_VARS] = true;
+ actions[NEW_PROPERTY_SET] = true;
+ actions[NEW_SERVER] = true;
+ actions[NEW_SERVER_ICEBOX] = true;
+ actions[NEW_SERVER_FROM_TEMPLATE] = true;
+ }
+ return actions;
}
public JPopupMenu getPopupMenu()
{
- ApplicationActions actions = getCoordinator().getActionsForPopup();
- if(_popup == null)
- {
- _popup = new JPopupMenu();
- _popup.add(actions.get(NEW_PROPERTY_SET));
- _popup.addSeparator();
- _popup.add(actions.get(NEW_SERVER));
- _popup.add(actions.get(NEW_SERVER_ICEBOX));
- _popup.add(actions.get(NEW_SERVER_FROM_TEMPLATE));
- }
- actions.setTarget(this);
- return _popup;
+ ApplicationActions actions = getCoordinator().getActionsForPopup();
+ if(_popup == null)
+ {
+ _popup = new JPopupMenu();
+ _popup.add(actions.get(NEW_PROPERTY_SET));
+ _popup.addSeparator();
+ _popup.add(actions.get(NEW_SERVER));
+ _popup.add(actions.get(NEW_SERVER_ICEBOX));
+ _popup.add(actions.get(NEW_SERVER_FROM_TEMPLATE));
+ }
+ actions.setTarget(this);
+ return _popup;
}
public void copy()
{
- getCoordinator().setClipboard(copyDescriptor(_descriptor));
- getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
+ getCoordinator().setClipboard(copyDescriptor(_descriptor));
+ getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
}
public void paste()
{
- Object descriptor = getCoordinator().getClipboard();
- if(descriptor instanceof NodeDescriptor)
- {
- ((TreeNode)_parent).paste();
- }
- else if(descriptor instanceof PropertySetDescriptor)
- {
- newPropertySet(PropertySet.copyDescriptor((PropertySetDescriptor)descriptor));
- }
- else if(descriptor instanceof ServerInstanceDescriptor)
- {
- newServer(ServerInstance.copyDescriptor((ServerInstanceDescriptor)descriptor));
- }
- else
- {
- newServer(PlainServer.copyDescriptor(((ServerDescriptor)descriptor)));
- }
+ Object descriptor = getCoordinator().getClipboard();
+ if(descriptor instanceof NodeDescriptor)
+ {
+ ((TreeNode)_parent).paste();
+ }
+ else if(descriptor instanceof PropertySetDescriptor)
+ {
+ newPropertySet(PropertySet.copyDescriptor((PropertySetDescriptor)descriptor));
+ }
+ else if(descriptor instanceof ServerInstanceDescriptor)
+ {
+ newServer(ServerInstance.copyDescriptor((ServerInstanceDescriptor)descriptor));
+ }
+ else
+ {
+ newServer(PlainServer.copyDescriptor(((ServerDescriptor)descriptor)));
+ }
}
public void newPropertySet()
{
- newPropertySet(new PropertySetDescriptor(
- new String[0], new java.util.LinkedList()));
+ newPropertySet(new PropertySetDescriptor(
+ new String[0], new java.util.LinkedList()));
}
public void newServer()
{
- newServer(PlainServer.newServerDescriptor());
+ newServer(PlainServer.newServerDescriptor());
}
public void newServerIceBox()
{
- newServer(PlainServer.newIceBoxDescriptor());
+ newServer(PlainServer.newIceBoxDescriptor());
}
public void newServerFromTemplate()
{
- ServerInstanceDescriptor descriptor =
- new ServerInstanceDescriptor("",
- new java.util.HashMap(),
- new PropertySetDescriptor(new String[0], new java.util.LinkedList()),
- new java.util.HashMap());
+ ServerInstanceDescriptor descriptor =
+ new ServerInstanceDescriptor("",
+ new java.util.HashMap(),
+ new PropertySetDescriptor(new String[0], new java.util.LinkedList()),
+ new java.util.HashMap());
- newServer(descriptor);
+ newServer(descriptor);
}
public void destroy()
{
- Nodes nodes = (Nodes)_parent;
- if(_ephemeral)
- {
- nodes.removeChild(this);
- }
- else
- {
- nodes.removeChild(this);
- nodes.removeDescriptor(_id);
- nodes.getEditable().removeElement(_id, _editable, Node.class);
- getRoot().updated();
- }
+ Nodes nodes = (Nodes)_parent;
+ if(_ephemeral)
+ {
+ nodes.removeChild(this);
+ }
+ else
+ {
+ nodes.removeChild(this);
+ nodes.removeDescriptor(_id);
+ nodes.getEditable().removeElement(_id, _editable, Node.class);
+ getRoot().updated();
+ }
}
public Component getTreeCellRendererComponent(
- JTree tree,
- Object value,
- boolean sel,
- boolean expanded,
- boolean leaf,
- int row,
- boolean hasFocus)
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
{
- if(_cellRenderer == null)
- {
- //
- // Initialization
- //
- _cellRenderer = new DefaultTreeCellRenderer();
- Icon nodeIcon = Utils.getIcon("/icons/16x16/node.png");
- _cellRenderer.setOpenIcon(nodeIcon);
- _cellRenderer.setClosedIcon(nodeIcon);
- }
-
- return _cellRenderer.getTreeCellRendererComponent(
- tree, value, sel, expanded, leaf, row, hasFocus);
+ if(_cellRenderer == null)
+ {
+ //
+ // Initialization
+ //
+ _cellRenderer = new DefaultTreeCellRenderer();
+ Icon nodeIcon = Utils.getIcon("/icons/16x16/node.png");
+ _cellRenderer.setOpenIcon(nodeIcon);
+ _cellRenderer.setClosedIcon(nodeIcon);
+ }
+
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
}
public Editor getEditor()
{
- if(_editor == null)
- {
- _editor = (NodeEditor)getRoot().getEditor(NodeEditor.class, this);
- }
- _editor.show(this);
- return _editor;
+ if(_editor == null)
+ {
+ _editor = (NodeEditor)getRoot().getEditor(NodeEditor.class, this);
+ }
+ _editor.show(this);
+ return _editor;
}
protected Editor createEditor()
{
- return new NodeEditor();
+ return new NodeEditor();
}
public boolean isEphemeral()
{
- return _ephemeral;
+ return _ephemeral;
}
Object getDescriptor()
{
- return _descriptor;
+ return _descriptor;
}
NodeDescriptor saveDescriptor()
{
- return (NodeDescriptor)_descriptor.clone();
+ return (NodeDescriptor)_descriptor.clone();
}
void restoreDescriptor(NodeDescriptor copy)
{
- _descriptor.description = copy.description;
- _descriptor.loadFactor = copy.loadFactor;
- _descriptor.variables = copy.variables;
+ _descriptor.description = copy.description;
+ _descriptor.loadFactor = copy.loadFactor;
+ _descriptor.variables = copy.variables;
}
void write(XMLWriter writer) throws java.io.IOException
{
- if(!_ephemeral)
- {
- java.util.List attributes = new java.util.LinkedList();
- attributes.add(createAttribute("name", _id));
- if(_descriptor.loadFactor.length() > 0)
- {
- attributes.add(createAttribute("load-factor",
- _descriptor.loadFactor));
- }
-
- writer.writeStartTag("node", attributes);
-
- if(_descriptor.description.length() > 0)
- {
- writer.writeElement("description", _descriptor.description);
- }
- writeVariables(writer, _descriptor.variables);
-
-
- java.util.Iterator p = _propertySets.iterator();
- while(p.hasNext())
- {
- PropertySet ps = (PropertySet)p.next();
- ps.write(writer);
- }
-
- p = _servers.iterator();
- while(p.hasNext())
- {
- TreeNode server = (TreeNode)p.next();
- server.write(writer);
- }
- writer.writeEndTag("node");
- }
+ if(!_ephemeral)
+ {
+ java.util.List attributes = new java.util.LinkedList();
+ attributes.add(createAttribute("name", _id));
+ if(_descriptor.loadFactor.length() > 0)
+ {
+ attributes.add(createAttribute("load-factor",
+ _descriptor.loadFactor));
+ }
+
+ writer.writeStartTag("node", attributes);
+
+ if(_descriptor.description.length() > 0)
+ {
+ writer.writeElement("description", _descriptor.description);
+ }
+ writeVariables(writer, _descriptor.variables);
+
+
+ java.util.Iterator p = _propertySets.iterator();
+ while(p.hasNext())
+ {
+ PropertySet ps = (PropertySet)p.next();
+ ps.write(writer);
+ }
+
+ p = _servers.iterator();
+ while(p.hasNext())
+ {
+ TreeNode server = (TreeNode)p.next();
+ server.write(writer);
+ }
+ writer.writeEndTag("node");
+ }
}
static class Backup
{
- Utils.Resolver resolver;
- java.util.List backupList;
- java.util.List servers;
+ Utils.Resolver resolver;
+ java.util.List backupList;
+ java.util.List servers;
}
//
@@ -471,854 +471,854 @@ class Node extends TreeNode implements PropertySetParent
//
Backup rebuild(java.util.List editables)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- Root root = getRoot();
- Backup backup = new Backup();
- backup.resolver = _resolver;
-
- _resolver = new Utils.Resolver(new java.util.Map[]
- {_descriptor.variables, root.getVariables()});
-
- _resolver.put("application", root.getId());
- _resolver.put("node", _id);
-
- backup.backupList = new java.util.Vector();
- backup.servers = (java.util.LinkedList)_servers.clone();
-
- java.util.Iterator p = backup.servers.iterator();
- while(p.hasNext())
- {
- Server server = (Server)p.next();
- try
- {
- backup.backupList.add(server.rebuild(editables));
- }
- catch(UpdateFailedException e)
- {
- restore(backup);
- throw e;
- }
- }
- return backup;
+ Root root = getRoot();
+ Backup backup = new Backup();
+ backup.resolver = _resolver;
+
+ _resolver = new Utils.Resolver(new java.util.Map[]
+ {_descriptor.variables, root.getVariables()});
+
+ _resolver.put("application", root.getId());
+ _resolver.put("node", _id);
+
+ backup.backupList = new java.util.Vector();
+ backup.servers = (java.util.LinkedList)_servers.clone();
+
+ java.util.Iterator p = backup.servers.iterator();
+ while(p.hasNext())
+ {
+ Server server = (Server)p.next();
+ try
+ {
+ backup.backupList.add(server.rebuild(editables));
+ }
+ catch(UpdateFailedException e)
+ {
+ restore(backup);
+ throw e;
+ }
+ }
+ return backup;
}
void commit()
{
- _editable.commit();
- _origVariables = _descriptor.variables;
- _origDescription = _descriptor.description;
- _origLoadFactor = _descriptor.loadFactor;
-
- java.util.Iterator p = _propertySets.iterator();
- while(p.hasNext())
- {
- PropertySet ps = (PropertySet)p.next();
- ps.commit();
- }
-
- p = _servers.iterator();
- while(p.hasNext())
- {
- Server server = (Server)p.next();
- server.getEditable().commit();
- }
+ _editable.commit();
+ _origVariables = _descriptor.variables;
+ _origDescription = _descriptor.description;
+ _origLoadFactor = _descriptor.loadFactor;
+
+ java.util.Iterator p = _propertySets.iterator();
+ while(p.hasNext())
+ {
+ PropertySet ps = (PropertySet)p.next();
+ ps.commit();
+ }
+
+ p = _servers.iterator();
+ while(p.hasNext())
+ {
+ Server server = (Server)p.next();
+ server.getEditable().commit();
+ }
}
void restore(Backup backup)
- {
- for(int i = backup.backupList.size() - 1; i >= 0; --i)
- {
- ((Server)backup.servers.get(i)).restore(backup.backupList.get(i));
- }
- _resolver = backup.resolver;
+ {
+ for(int i = backup.backupList.size() - 1; i >= 0; --i)
+ {
+ ((Server)backup.servers.get(i)).restore(backup.backupList.get(i));
+ }
+ _resolver = backup.resolver;
}
ServerInstance createServer(boolean brandNew,
- ServerInstanceDescriptor instanceDescriptor)
- throws UpdateFailedException
+ ServerInstanceDescriptor instanceDescriptor)
+ throws UpdateFailedException
{
- Root root = getRoot();
-
- //
- // Find template
- //
- TemplateDescriptor templateDescriptor =
- root.findServerTemplateDescriptor(instanceDescriptor.template);
-
- assert templateDescriptor != null;
-
- ServerDescriptor serverDescriptor =
- (ServerDescriptor)templateDescriptor.descriptor;
-
- assert serverDescriptor != null;
- boolean isIceBox = serverDescriptor instanceof IceBoxDescriptor;
-
- //
- // Build resolver
- //
- Utils.Resolver instanceResolver =
- new Utils.Resolver(_resolver,
- instanceDescriptor.parameterValues,
- templateDescriptor.parameterDefaults);
-
- String serverId = instanceResolver.substitute(serverDescriptor.id);
- instanceResolver.put("server", serverId);
-
- //
- // Create server
- //
- return new ServerInstance(brandNew, this, serverId,
- instanceResolver, instanceDescriptor, isIceBox);
+ Root root = getRoot();
+
+ //
+ // Find template
+ //
+ TemplateDescriptor templateDescriptor =
+ root.findServerTemplateDescriptor(instanceDescriptor.template);
+
+ assert templateDescriptor != null;
+
+ ServerDescriptor serverDescriptor =
+ (ServerDescriptor)templateDescriptor.descriptor;
+
+ assert serverDescriptor != null;
+ boolean isIceBox = serverDescriptor instanceof IceBoxDescriptor;
+
+ //
+ // Build resolver
+ //
+ Utils.Resolver instanceResolver =
+ new Utils.Resolver(_resolver,
+ instanceDescriptor.parameterValues,
+ templateDescriptor.parameterDefaults);
+
+ String serverId = instanceResolver.substitute(serverDescriptor.id);
+ instanceResolver.put("server", serverId);
+
+ //
+ // Create server
+ //
+ return new ServerInstance(brandNew, this, serverId,
+ instanceResolver, instanceDescriptor, isIceBox);
}
PlainServer createServer(boolean brandNew, ServerDescriptor serverDescriptor)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- //
- // Build resolver
- //
- Utils.Resolver instanceResolver = new Utils.Resolver(_resolver);
- String serverId = instanceResolver.substitute(serverDescriptor.id);
- instanceResolver.put("server", serverId);
-
- //
- // Create server
- //
- return new PlainServer(brandNew, this, serverId,
- instanceResolver, serverDescriptor);
+ //
+ // Build resolver
+ //
+ Utils.Resolver instanceResolver = new Utils.Resolver(_resolver);
+ String serverId = instanceResolver.substitute(serverDescriptor.id);
+ instanceResolver.put("server", serverId);
+
+ //
+ // Create server
+ //
+ return new PlainServer(brandNew, this, serverId,
+ instanceResolver, serverDescriptor);
}
NodeUpdateDescriptor getUpdate()
{
- NodeUpdateDescriptor update = new NodeUpdateDescriptor();
- update.name = _id;
-
- //
- // First: property sets
- //
- if(_editable.isNew())
- {
- update.removePropertySets = new String[0];
- update.propertySets = _descriptor.propertySets;
- }
- else
- {
- update.removePropertySets = _editable.removedElements(PropertySet.class);
- update.propertySets = new java.util.HashMap();
-
- java.util.Iterator p = _propertySets.iterator();
- while(p.hasNext())
- {
- PropertySet ps = (PropertySet)p.next();
- if(ps.getEditable().isNew() || ps.getEditable().isModified())
- {
- update.propertySets.put(ps.getId(), ps.getDescriptor());
- }
- }
- }
-
- //
- // Then: servers
- //
- if(_editable.isNew())
- {
- update.removeServers = new String[0];
- }
- else
- {
- update.removeServers = _editable.removedElements(Server.class);
- }
-
- update.serverInstances = new java.util.LinkedList();
- update.servers = new java.util.LinkedList();
-
- java.util.Iterator p = _servers.iterator();
- while(p.hasNext())
- {
- Server server = (Server)p.next();
- if(_editable.isNew() || server.getEditable().isModified()
- || server.getEditable().isNew())
- {
- if(server instanceof PlainServer)
- {
- update.servers.add(server.getDescriptor());
- }
- else
- {
- update.serverInstances.add(server.getDescriptor());
- }
- }
- }
-
- //
- // Anything in this update?
- //
- if(!_editable.isNew() && !_editable.isModified()
- && update.removePropertySets.length == 0
- && update.propertySets.size() == 0
- && update.removeServers.length == 0
- && update.servers.size() == 0
- && update.serverInstances.size() == 0)
- {
- return null;
- }
-
- if(_editable.isNew())
- {
- update.variables = _descriptor.variables;
- update.removeVariables = new String[0];
- update.loadFactor = new IceGrid.BoxedString(_descriptor.loadFactor);
- }
- else
- {
- if(!_descriptor.description.equals(_origDescription))
- {
- update.description = new IceGrid.BoxedString(_descriptor.description);
- }
-
- if(!_descriptor.loadFactor.equals(_origLoadFactor))
- {
- update.loadFactor = new IceGrid.BoxedString(_descriptor.loadFactor);
- }
-
- //
- // Diff variables (TODO: avoid duplication with same code in Root)
- //
- update.variables = new java.util.TreeMap(_descriptor.variables);
- java.util.List removeVariables = new java.util.LinkedList();
-
- p = _origVariables.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- Object key = entry.getKey();
- Object newValue = update.variables.get(key);
- if(newValue == null)
- {
- removeVariables.add(key);
- }
- else
- {
- Object value = entry.getValue();
- if(newValue.equals(value))
- {
- update.variables.remove(key);
- }
- }
- }
- update.removeVariables = (String[])removeVariables.toArray(new String[0]);
- }
-
- return update;
+ NodeUpdateDescriptor update = new NodeUpdateDescriptor();
+ update.name = _id;
+
+ //
+ // First: property sets
+ //
+ if(_editable.isNew())
+ {
+ update.removePropertySets = new String[0];
+ update.propertySets = _descriptor.propertySets;
+ }
+ else
+ {
+ update.removePropertySets = _editable.removedElements(PropertySet.class);
+ update.propertySets = new java.util.HashMap();
+
+ java.util.Iterator p = _propertySets.iterator();
+ while(p.hasNext())
+ {
+ PropertySet ps = (PropertySet)p.next();
+ if(ps.getEditable().isNew() || ps.getEditable().isModified())
+ {
+ update.propertySets.put(ps.getId(), ps.getDescriptor());
+ }
+ }
+ }
+
+ //
+ // Then: servers
+ //
+ if(_editable.isNew())
+ {
+ update.removeServers = new String[0];
+ }
+ else
+ {
+ update.removeServers = _editable.removedElements(Server.class);
+ }
+
+ update.serverInstances = new java.util.LinkedList();
+ update.servers = new java.util.LinkedList();
+
+ java.util.Iterator p = _servers.iterator();
+ while(p.hasNext())
+ {
+ Server server = (Server)p.next();
+ if(_editable.isNew() || server.getEditable().isModified()
+ || server.getEditable().isNew())
+ {
+ if(server instanceof PlainServer)
+ {
+ update.servers.add(server.getDescriptor());
+ }
+ else
+ {
+ update.serverInstances.add(server.getDescriptor());
+ }
+ }
+ }
+
+ //
+ // Anything in this update?
+ //
+ if(!_editable.isNew() && !_editable.isModified()
+ && update.removePropertySets.length == 0
+ && update.propertySets.size() == 0
+ && update.removeServers.length == 0
+ && update.servers.size() == 0
+ && update.serverInstances.size() == 0)
+ {
+ return null;
+ }
+
+ if(_editable.isNew())
+ {
+ update.variables = _descriptor.variables;
+ update.removeVariables = new String[0];
+ update.loadFactor = new IceGrid.BoxedString(_descriptor.loadFactor);
+ }
+ else
+ {
+ if(!_descriptor.description.equals(_origDescription))
+ {
+ update.description = new IceGrid.BoxedString(_descriptor.description);
+ }
+
+ if(!_descriptor.loadFactor.equals(_origLoadFactor))
+ {
+ update.loadFactor = new IceGrid.BoxedString(_descriptor.loadFactor);
+ }
+
+ //
+ // Diff variables (TODO: avoid duplication with same code in Root)
+ //
+ update.variables = new java.util.TreeMap(_descriptor.variables);
+ java.util.List removeVariables = new java.util.LinkedList();
+
+ p = _origVariables.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ Object key = entry.getKey();
+ Object newValue = update.variables.get(key);
+ if(newValue == null)
+ {
+ removeVariables.add(key);
+ }
+ else
+ {
+ Object value = entry.getValue();
+ if(newValue.equals(value))
+ {
+ update.variables.remove(key);
+ }
+ }
+ }
+ update.removeVariables = (String[])removeVariables.toArray(new String[0]);
+ }
+
+ return update;
}
void update(NodeUpdateDescriptor update,
- java.util.Set serverTemplates, java.util.Set serviceTemplates)
- throws UpdateFailedException
+ java.util.Set serverTemplates, java.util.Set serviceTemplates)
+ throws UpdateFailedException
{
- Root root = getRoot();
-
- java.util.Vector newServers = new java.util.Vector();
- java.util.Vector updatedServers = new java.util.Vector();
-
- if(update != null)
- {
- //
- // Description
- //
- if(update.description != null)
- {
- _descriptor.description = update.description.value;
- _origDescription = _descriptor.description;
- }
-
- //
- // Load factor
- //
- if(update.loadFactor != null)
- {
- _descriptor.loadFactor = update.loadFactor.value;
- _origLoadFactor = _descriptor.loadFactor;
- }
-
- //
- // Variables
- //
- for(int i = 0; i < update.removeVariables.length; ++i)
- {
- _descriptor.variables.remove(update.removeVariables[i]);
- }
- _descriptor.variables.putAll(update.variables);
-
-
- //
- // Property Sets
- //
- removePropertySets(update.removePropertySets);
- for(int i = 0; i < update.removePropertySets.length; ++i)
- {
- _descriptor.propertySets.remove(update.removePropertySets[i]);
- }
-
- java.util.Vector newPropertySets = new java.util.Vector();
- java.util.Vector updatedPropertySets = new java.util.Vector();
-
- java.util.Iterator p = update.propertySets.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
-
- String id = (String)entry.getKey();
- PropertySetDescriptor psd = (PropertySetDescriptor)entry.getValue();
-
- //
- // Lookup named property set
- //
- PropertySet ps = findPropertySet(id);
- if(ps != null)
- {
- ps.rebuild(psd);
- updatedPropertySets.add(ps);
- }
- else
- {
- ps = new PropertySet(false, this, id, id, psd);
- newPropertySets.add(ps);
- _descriptor.propertySets.put(id, psd);
- }
- }
- childrenChanged(updatedPropertySets);
- insertPropertySets(newPropertySets, true);
-
-
- //
- // Update _descriptor
- //
- for(int i = 0; i < update.removeServers.length; ++i)
- {
- Server server = findServer(update.removeServers[i]);
- removeDescriptor(server);
- }
-
- //
- // One big set of removes
- //
- removeServers(update.removeServers);
-
- //
- // One big set of updates, followed by inserts
- //
- p = update.serverInstances.iterator();
- while(p.hasNext())
- {
- ServerInstanceDescriptor instanceDescriptor =
- (ServerInstanceDescriptor)p.next();
-
- //
- // Find template
- //
- TemplateDescriptor templateDescriptor =
- root.findServerTemplateDescriptor(instanceDescriptor.template);
-
- assert templateDescriptor != null;
-
- ServerDescriptor serverDescriptor =
- (ServerDescriptor)templateDescriptor.descriptor;
-
- assert serverDescriptor != null;
-
- //
- // Build resolver
- //
- Utils.Resolver instanceResolver =
- new Utils.Resolver(_resolver,
- instanceDescriptor.parameterValues,
- templateDescriptor.parameterDefaults);
-
- String serverId = instanceResolver.substitute(serverDescriptor.id);
- instanceResolver.put("server", serverId);
-
- //
- // Lookup servers
- //
- ServerInstance server = (ServerInstance)findServer(serverId);
- if(server != null)
- {
- removeDescriptor(server);
- server.rebuild(instanceResolver, instanceDescriptor,
- serverDescriptor instanceof IceBoxDescriptor);
- updatedServers.add(server);
- _descriptor.serverInstances.add(instanceDescriptor);
- }
- else
- {
- server = new ServerInstance(false, this, serverId, instanceResolver,
- instanceDescriptor,
- serverDescriptor instanceof IceBoxDescriptor);
- newServers.add(server);
- _descriptor.serverInstances.add(instanceDescriptor);
- }
- }
-
- //
- // Plain servers
- //
- p = update.servers.iterator();
- while(p.hasNext())
- {
- ServerDescriptor serverDescriptor = (ServerDescriptor)p.next();
-
- //
- // Build resolver
- //
- Utils.Resolver instanceResolver = new Utils.Resolver(_resolver);
- String serverId = instanceResolver.substitute(serverDescriptor.id);
- instanceResolver.put("server", serverId);
-
- //
- // Lookup server
- //
- PlainServer server = (PlainServer)findServer(serverId);
-
- if(server != null)
- {
- removeDescriptor(server);
- server.rebuild(instanceResolver, serverDescriptor);
- updatedServers.add(server);
- _descriptor.servers.add(serverDescriptor);
- }
- else
- {
- server = new PlainServer(false, this, serverId, instanceResolver,
- serverDescriptor);
- newServers.add(server);
- _descriptor.servers.add(serverDescriptor);
- }
- }
- }
-
- //
- // Find servers affected by template updates
- //
- java.util.Set serverSet = new java.util.HashSet();
-
- java.util.Iterator p = serverTemplates.iterator();
- while(p.hasNext())
- {
- String template = (String)p.next();
- java.util.List serverInstances = findServerInstances(template);
- java.util.Iterator q = serverInstances.iterator();
- while(q.hasNext())
- {
- ServerInstance server = (ServerInstance)q.next();
- if(!updatedServers.contains(server) && !newServers.contains(server))
- {
- serverSet.add(server);
- }
- }
- }
-
- //
- // Servers affected by service-template updates
- //
- p = serviceTemplates.iterator();
- while(p.hasNext())
- {
- java.util.List serviceInstances =
- findServiceInstances((String)p.next());
- java.util.Iterator q = serviceInstances.iterator();
- while(q.hasNext())
- {
- ServiceInstance service = (ServiceInstance)q.next();
- Server server = (Server)service.getParent().getParent();
- if(!updatedServers.contains(server) && !newServers.contains(server))
- {
- serverSet.add(server);
- }
- }
- }
-
- //
- // Rebuild these servers
- //
- p = serverSet.iterator();
- while(p.hasNext())
- {
- Server server = (Server)p.next();
-
- if(server instanceof PlainServer)
- {
- PlainServer ps = (PlainServer)server;
- ServerDescriptor serverDescriptor = (ServerDescriptor)ps.getDescriptor();
- Utils.Resolver instanceResolver = new Utils.Resolver(_resolver);
-
- String serverId = instanceResolver.substitute(serverDescriptor.id);
- assert serverId.equals(ps.getId());
-
- ps.rebuild(instanceResolver, serverDescriptor);
- }
- else
- {
- ServerInstance si = (ServerInstance)server;
- ServerInstanceDescriptor instanceDescriptor = (ServerInstanceDescriptor)si.getDescriptor();
-
- TemplateDescriptor templateDescriptor =
- root.findServerTemplateDescriptor(instanceDescriptor.template);
- assert templateDescriptor != null;
-
- ServerDescriptor serverDescriptor = (ServerDescriptor)templateDescriptor.descriptor;
- assert serverDescriptor != null;
-
- Utils.Resolver instanceResolver =
- new Utils.Resolver(_resolver,
- instanceDescriptor.parameterValues,
- templateDescriptor.parameterDefaults);
-
- String serverId = instanceResolver.substitute(serverDescriptor.id);
- assert serverId.equals(si.getId());
-
- si.rebuild(instanceResolver, instanceDescriptor,
- serverDescriptor instanceof IceBoxDescriptor);
- }
- updatedServers.add(server);
- }
-
- childrenChanged(updatedServers);
- insertServers(newServers, true);
+ Root root = getRoot();
+
+ java.util.Vector newServers = new java.util.Vector();
+ java.util.Vector updatedServers = new java.util.Vector();
+
+ if(update != null)
+ {
+ //
+ // Description
+ //
+ if(update.description != null)
+ {
+ _descriptor.description = update.description.value;
+ _origDescription = _descriptor.description;
+ }
+
+ //
+ // Load factor
+ //
+ if(update.loadFactor != null)
+ {
+ _descriptor.loadFactor = update.loadFactor.value;
+ _origLoadFactor = _descriptor.loadFactor;
+ }
+
+ //
+ // Variables
+ //
+ for(int i = 0; i < update.removeVariables.length; ++i)
+ {
+ _descriptor.variables.remove(update.removeVariables[i]);
+ }
+ _descriptor.variables.putAll(update.variables);
+
+
+ //
+ // Property Sets
+ //
+ removePropertySets(update.removePropertySets);
+ for(int i = 0; i < update.removePropertySets.length; ++i)
+ {
+ _descriptor.propertySets.remove(update.removePropertySets[i]);
+ }
+
+ java.util.Vector newPropertySets = new java.util.Vector();
+ java.util.Vector updatedPropertySets = new java.util.Vector();
+
+ java.util.Iterator p = update.propertySets.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+
+ String id = (String)entry.getKey();
+ PropertySetDescriptor psd = (PropertySetDescriptor)entry.getValue();
+
+ //
+ // Lookup named property set
+ //
+ PropertySet ps = findPropertySet(id);
+ if(ps != null)
+ {
+ ps.rebuild(psd);
+ updatedPropertySets.add(ps);
+ }
+ else
+ {
+ ps = new PropertySet(false, this, id, id, psd);
+ newPropertySets.add(ps);
+ _descriptor.propertySets.put(id, psd);
+ }
+ }
+ childrenChanged(updatedPropertySets);
+ insertPropertySets(newPropertySets, true);
+
+
+ //
+ // Update _descriptor
+ //
+ for(int i = 0; i < update.removeServers.length; ++i)
+ {
+ Server server = findServer(update.removeServers[i]);
+ removeDescriptor(server);
+ }
+
+ //
+ // One big set of removes
+ //
+ removeServers(update.removeServers);
+
+ //
+ // One big set of updates, followed by inserts
+ //
+ p = update.serverInstances.iterator();
+ while(p.hasNext())
+ {
+ ServerInstanceDescriptor instanceDescriptor =
+ (ServerInstanceDescriptor)p.next();
+
+ //
+ // Find template
+ //
+ TemplateDescriptor templateDescriptor =
+ root.findServerTemplateDescriptor(instanceDescriptor.template);
+
+ assert templateDescriptor != null;
+
+ ServerDescriptor serverDescriptor =
+ (ServerDescriptor)templateDescriptor.descriptor;
+
+ assert serverDescriptor != null;
+
+ //
+ // Build resolver
+ //
+ Utils.Resolver instanceResolver =
+ new Utils.Resolver(_resolver,
+ instanceDescriptor.parameterValues,
+ templateDescriptor.parameterDefaults);
+
+ String serverId = instanceResolver.substitute(serverDescriptor.id);
+ instanceResolver.put("server", serverId);
+
+ //
+ // Lookup servers
+ //
+ ServerInstance server = (ServerInstance)findServer(serverId);
+ if(server != null)
+ {
+ removeDescriptor(server);
+ server.rebuild(instanceResolver, instanceDescriptor,
+ serverDescriptor instanceof IceBoxDescriptor);
+ updatedServers.add(server);
+ _descriptor.serverInstances.add(instanceDescriptor);
+ }
+ else
+ {
+ server = new ServerInstance(false, this, serverId, instanceResolver,
+ instanceDescriptor,
+ serverDescriptor instanceof IceBoxDescriptor);
+ newServers.add(server);
+ _descriptor.serverInstances.add(instanceDescriptor);
+ }
+ }
+
+ //
+ // Plain servers
+ //
+ p = update.servers.iterator();
+ while(p.hasNext())
+ {
+ ServerDescriptor serverDescriptor = (ServerDescriptor)p.next();
+
+ //
+ // Build resolver
+ //
+ Utils.Resolver instanceResolver = new Utils.Resolver(_resolver);
+ String serverId = instanceResolver.substitute(serverDescriptor.id);
+ instanceResolver.put("server", serverId);
+
+ //
+ // Lookup server
+ //
+ PlainServer server = (PlainServer)findServer(serverId);
+
+ if(server != null)
+ {
+ removeDescriptor(server);
+ server.rebuild(instanceResolver, serverDescriptor);
+ updatedServers.add(server);
+ _descriptor.servers.add(serverDescriptor);
+ }
+ else
+ {
+ server = new PlainServer(false, this, serverId, instanceResolver,
+ serverDescriptor);
+ newServers.add(server);
+ _descriptor.servers.add(serverDescriptor);
+ }
+ }
+ }
+
+ //
+ // Find servers affected by template updates
+ //
+ java.util.Set serverSet = new java.util.HashSet();
+
+ java.util.Iterator p = serverTemplates.iterator();
+ while(p.hasNext())
+ {
+ String template = (String)p.next();
+ java.util.List serverInstances = findServerInstances(template);
+ java.util.Iterator q = serverInstances.iterator();
+ while(q.hasNext())
+ {
+ ServerInstance server = (ServerInstance)q.next();
+ if(!updatedServers.contains(server) && !newServers.contains(server))
+ {
+ serverSet.add(server);
+ }
+ }
+ }
+
+ //
+ // Servers affected by service-template updates
+ //
+ p = serviceTemplates.iterator();
+ while(p.hasNext())
+ {
+ java.util.List serviceInstances =
+ findServiceInstances((String)p.next());
+ java.util.Iterator q = serviceInstances.iterator();
+ while(q.hasNext())
+ {
+ ServiceInstance service = (ServiceInstance)q.next();
+ Server server = (Server)service.getParent().getParent();
+ if(!updatedServers.contains(server) && !newServers.contains(server))
+ {
+ serverSet.add(server);
+ }
+ }
+ }
+
+ //
+ // Rebuild these servers
+ //
+ p = serverSet.iterator();
+ while(p.hasNext())
+ {
+ Server server = (Server)p.next();
+
+ if(server instanceof PlainServer)
+ {
+ PlainServer ps = (PlainServer)server;
+ ServerDescriptor serverDescriptor = (ServerDescriptor)ps.getDescriptor();
+ Utils.Resolver instanceResolver = new Utils.Resolver(_resolver);
+
+ String serverId = instanceResolver.substitute(serverDescriptor.id);
+ assert serverId.equals(ps.getId());
+
+ ps.rebuild(instanceResolver, serverDescriptor);
+ }
+ else
+ {
+ ServerInstance si = (ServerInstance)server;
+ ServerInstanceDescriptor instanceDescriptor = (ServerInstanceDescriptor)si.getDescriptor();
+
+ TemplateDescriptor templateDescriptor =
+ root.findServerTemplateDescriptor(instanceDescriptor.template);
+ assert templateDescriptor != null;
+
+ ServerDescriptor serverDescriptor = (ServerDescriptor)templateDescriptor.descriptor;
+ assert serverDescriptor != null;
+
+ Utils.Resolver instanceResolver =
+ new Utils.Resolver(_resolver,
+ instanceDescriptor.parameterValues,
+ templateDescriptor.parameterDefaults);
+
+ String serverId = instanceResolver.substitute(serverDescriptor.id);
+ assert serverId.equals(si.getId());
+
+ si.rebuild(instanceResolver, instanceDescriptor,
+ serverDescriptor instanceof IceBoxDescriptor);
+ }
+ updatedServers.add(server);
+ }
+
+ childrenChanged(updatedServers);
+ insertServers(newServers, true);
}
Node(boolean brandNew, TreeNode parent, String nodeName, NodeDescriptor descriptor)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- super(parent, nodeName);
- _editable = new Editable(brandNew);
-
- _ephemeral = false;
- _descriptor = descriptor;
-
- _origVariables = _descriptor.variables;
- _origDescription = _descriptor.description;
- _origLoadFactor = _descriptor.loadFactor;
-
- _resolver = new Utils.Resolver(new java.util.Map[]
- {_descriptor.variables, getRoot().getVariables()});
-
- _resolver.put("application", getRoot().getId());
- _resolver.put("node", _id);
-
- //
- // Property Sets
- //
- java.util.Iterator p = _descriptor.propertySets.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- String id = (String)entry.getKey();
- insertPropertySet(new PropertySet(false, this,
- id, id,
- (PropertySetDescriptor)entry.getValue()),
- false);
- }
-
- //
- // Template instances
- //
- p = _descriptor.serverInstances.iterator();
- while(p.hasNext())
- {
- ServerInstanceDescriptor instanceDescriptor =
- (ServerInstanceDescriptor)p.next();
-
- insertServer(createServer(false, instanceDescriptor), false);
- }
-
- //
- // Plain servers
- //
- p = _descriptor.servers.iterator();
- while(p.hasNext())
- {
- ServerDescriptor serverDescriptor = (ServerDescriptor)p.next();
- insertServer(createServer(false, serverDescriptor), false);
- }
+ super(parent, nodeName);
+ _editable = new Editable(brandNew);
+
+ _ephemeral = false;
+ _descriptor = descriptor;
+
+ _origVariables = _descriptor.variables;
+ _origDescription = _descriptor.description;
+ _origLoadFactor = _descriptor.loadFactor;
+
+ _resolver = new Utils.Resolver(new java.util.Map[]
+ {_descriptor.variables, getRoot().getVariables()});
+
+ _resolver.put("application", getRoot().getId());
+ _resolver.put("node", _id);
+
+ //
+ // Property Sets
+ //
+ java.util.Iterator p = _descriptor.propertySets.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ String id = (String)entry.getKey();
+ insertPropertySet(new PropertySet(false, this,
+ id, id,
+ (PropertySetDescriptor)entry.getValue()),
+ false);
+ }
+
+ //
+ // Template instances
+ //
+ p = _descriptor.serverInstances.iterator();
+ while(p.hasNext())
+ {
+ ServerInstanceDescriptor instanceDescriptor =
+ (ServerInstanceDescriptor)p.next();
+
+ insertServer(createServer(false, instanceDescriptor), false);
+ }
+
+ //
+ // Plain servers
+ //
+ p = _descriptor.servers.iterator();
+ while(p.hasNext())
+ {
+ ServerDescriptor serverDescriptor = (ServerDescriptor)p.next();
+ insertServer(createServer(false, serverDescriptor), false);
+ }
}
Node(TreeNode parent, String nodeName, NodeDescriptor descriptor)
{
- super(parent, nodeName);
- _editable = new Editable(false);
- _ephemeral = true;
- _descriptor = descriptor;
+ super(parent, nodeName);
+ _editable = new Editable(false);
+ _ephemeral = true;
+ _descriptor = descriptor;
}
java.util.List findServerInstances(String template)
{
- java.util.List result = new java.util.LinkedList();
- java.util.Iterator p = _servers.iterator();
- while(p.hasNext())
- {
- Server server = (Server)p.next();
-
- if(server instanceof ServerInstance)
- {
- ServerInstanceDescriptor instanceDescriptor
- = (ServerInstanceDescriptor)server.getDescriptor();
-
- if(instanceDescriptor.template.equals(template))
- {
- result.add(server);
- }
- }
- }
- return result;
+ java.util.List result = new java.util.LinkedList();
+ java.util.Iterator p = _servers.iterator();
+ while(p.hasNext())
+ {
+ Server server = (Server)p.next();
+
+ if(server instanceof ServerInstance)
+ {
+ ServerInstanceDescriptor instanceDescriptor
+ = (ServerInstanceDescriptor)server.getDescriptor();
+
+ if(instanceDescriptor.template.equals(template))
+ {
+ result.add(server);
+ }
+ }
+ }
+ return result;
}
void removeServerInstances(String template)
{
- java.util.List toRemove = new java.util.LinkedList();
-
- java.util.Iterator p = _servers.iterator();
- while(p.hasNext())
- {
- Server server = (Server)p.next();
-
- if(server instanceof ServerInstance)
- {
- ServerInstanceDescriptor instanceDescriptor
- = (ServerInstanceDescriptor)server.getDescriptor();
-
- if(instanceDescriptor.template.equals(template))
- {
- //
- // Remove instance
- //
- removeDescriptor(instanceDescriptor);
- String id = ((TreeNode)server).getId();
- _editable.removeElement(id, server.getEditable(), Server.class);
- toRemove.add(id);
- }
- }
- }
-
- if(toRemove.size() > 0)
- {
- removeServers((String[])toRemove.toArray(new String[0]));
- }
+ java.util.List toRemove = new java.util.LinkedList();
+
+ java.util.Iterator p = _servers.iterator();
+ while(p.hasNext())
+ {
+ Server server = (Server)p.next();
+
+ if(server instanceof ServerInstance)
+ {
+ ServerInstanceDescriptor instanceDescriptor
+ = (ServerInstanceDescriptor)server.getDescriptor();
+
+ if(instanceDescriptor.template.equals(template))
+ {
+ //
+ // Remove instance
+ //
+ removeDescriptor(instanceDescriptor);
+ String id = ((TreeNode)server).getId();
+ _editable.removeElement(id, server.getEditable(), Server.class);
+ toRemove.add(id);
+ }
+ }
+ }
+
+ if(toRemove.size() > 0)
+ {
+ removeServers((String[])toRemove.toArray(new String[0]));
+ }
}
java.util.List findServiceInstances(String template)
{
- java.util.List result = new java.util.LinkedList();
- java.util.Iterator p = _servers.iterator();
- while(p.hasNext())
- {
- Object o = p.next();
- if(o instanceof PlainServer)
- {
- result.addAll(((PlainServer)o).findServiceInstances(template));
- }
- }
- return result;
+ java.util.List result = new java.util.LinkedList();
+ java.util.Iterator p = _servers.iterator();
+ while(p.hasNext())
+ {
+ Object o = p.next();
+ if(o instanceof PlainServer)
+ {
+ result.addAll(((PlainServer)o).findServiceInstances(template));
+ }
+ }
+ return result;
}
void removeServiceInstances(String template)
- {
- java.util.Iterator p = _servers.iterator();
- while(p.hasNext())
- {
- Object o = p.next();
- if(o instanceof PlainServer)
- {
- ((PlainServer)o).removeServiceInstances(template);
- }
- }
+ {
+ java.util.Iterator p = _servers.iterator();
+ while(p.hasNext())
+ {
+ Object o = p.next();
+ if(o instanceof PlainServer)
+ {
+ ((PlainServer)o).removeServiceInstances(template);
+ }
+ }
}
Utils.Resolver getResolver()
{
- return _resolver;
+ return _resolver;
}
public void tryAdd(String id, PropertySetDescriptor descriptor)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- insertPropertySet(new PropertySet(true, this, id, id, descriptor),
- true);
- _descriptor.propertySets.put(id, descriptor);
+ insertPropertySet(new PropertySet(true, this, id, id, descriptor),
+ true);
+ _descriptor.propertySets.put(id, descriptor);
}
public void tryRename(String oldId, String oldId2, String newId)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- PropertySet oldChild = findPropertySet(oldId);
- assert oldChild != null;
- removePropertySet(oldChild);
- PropertySetDescriptor descriptor = (PropertySetDescriptor)oldChild.getDescriptor();
-
- try
- {
- insertPropertySet(
- new PropertySet(true, this, newId, newId, descriptor),
- true);
- }
- catch(UpdateFailedException ex)
- {
- try
- {
- insertPropertySet(oldChild, true);
- }
- catch(UpdateFailedException ufe)
- {
- assert false;
- }
- throw ex;
- }
-
- _editable.removeElement(oldId, oldChild.getEditable(), PropertySet.class);
- _descriptor.propertySets.remove(oldId);
- _descriptor.propertySets.put(newId, descriptor);
+ PropertySet oldChild = findPropertySet(oldId);
+ assert oldChild != null;
+ removePropertySet(oldChild);
+ PropertySetDescriptor descriptor = (PropertySetDescriptor)oldChild.getDescriptor();
+
+ try
+ {
+ insertPropertySet(
+ new PropertySet(true, this, newId, newId, descriptor),
+ true);
+ }
+ catch(UpdateFailedException ex)
+ {
+ try
+ {
+ insertPropertySet(oldChild, true);
+ }
+ catch(UpdateFailedException ufe)
+ {
+ assert false;
+ }
+ throw ex;
+ }
+
+ _editable.removeElement(oldId, oldChild.getEditable(), PropertySet.class);
+ _descriptor.propertySets.remove(oldId);
+ _descriptor.propertySets.put(newId, descriptor);
}
void tryAdd(ServerInstanceDescriptor instanceDescriptor,
- boolean addDescriptor) throws UpdateFailedException
+ boolean addDescriptor) throws UpdateFailedException
{
- insertServer(createServer(true, instanceDescriptor), true);
+ insertServer(createServer(true, instanceDescriptor), true);
- if(addDescriptor)
- {
- _descriptor.serverInstances.add(instanceDescriptor);
- }
+ if(addDescriptor)
+ {
+ _descriptor.serverInstances.add(instanceDescriptor);
+ }
}
void tryAdd(ServerDescriptor serverDescriptor,
- boolean addDescriptor) throws UpdateFailedException
+ boolean addDescriptor) throws UpdateFailedException
{
- insertServer(createServer(true, serverDescriptor), true);
+ insertServer(createServer(true, serverDescriptor), true);
- if(addDescriptor)
- {
- _descriptor.servers.add(serverDescriptor);
- }
+ if(addDescriptor)
+ {
+ _descriptor.servers.add(serverDescriptor);
+ }
}
void removeDescriptor(Server server)
{
- if(server instanceof ServerInstance)
- {
- removeDescriptor((ServerInstanceDescriptor)server.getDescriptor());
- }
- else
- {
- removeDescriptor((ServerDescriptor)server.getDescriptor());
- }
+ if(server instanceof ServerInstance)
+ {
+ removeDescriptor((ServerInstanceDescriptor)server.getDescriptor());
+ }
+ else
+ {
+ removeDescriptor((ServerDescriptor)server.getDescriptor());
+ }
}
void removeDescriptor(ServerDescriptor sd)
{
- //
- // A straight remove uses equals(), which is not the desired behavior
- //
- java.util.Iterator p = _descriptor.servers.iterator();
- while(p.hasNext())
- {
- if(sd == p.next())
- {
- p.remove();
- break;
- }
- }
+ //
+ // A straight remove uses equals(), which is not the desired behavior
+ //
+ java.util.Iterator p = _descriptor.servers.iterator();
+ while(p.hasNext())
+ {
+ if(sd == p.next())
+ {
+ p.remove();
+ break;
+ }
+ }
}
void removeDescriptor(ServerInstanceDescriptor sd)
{
- //
- // A straight remove uses equals(), which is not the desired behavior
- //
- java.util.Iterator p = _descriptor.serverInstances.iterator();
- while(p.hasNext())
- {
- if(sd == p.next())
- {
- p.remove();
- break;
- }
- }
+ //
+ // A straight remove uses equals(), which is not the desired behavior
+ //
+ java.util.Iterator p = _descriptor.serverInstances.iterator();
+ while(p.hasNext())
+ {
+ if(sd == p.next())
+ {
+ p.remove();
+ break;
+ }
+ }
}
private void newPropertySet(PropertySetDescriptor descriptor)
{
- String id = makeNewChildId("PropertySet");
-
- PropertySet ps = new PropertySet(this, id, descriptor);
- try
- {
- insertPropertySet(ps, true);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
- getRoot().setSelectedNode(ps);
+ String id = makeNewChildId("PropertySet");
+
+ PropertySet ps = new PropertySet(this, id, descriptor);
+ try
+ {
+ insertPropertySet(ps, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
+ getRoot().setSelectedNode(ps);
}
private void newServer(ServerDescriptor descriptor)
{
- descriptor.id = makeNewChildId(descriptor.id);
-
- PlainServer server = new PlainServer(this, descriptor.id, descriptor);
- try
- {
- insertServer(server, true);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
- getRoot().setSelectedNode(server);
+ descriptor.id = makeNewChildId(descriptor.id);
+
+ PlainServer server = new PlainServer(this, descriptor.id, descriptor);
+ try
+ {
+ insertServer(server, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
+ getRoot().setSelectedNode(server);
}
private void newServer(ServerInstanceDescriptor descriptor)
{
- String id = makeNewChildId("NewServer");
- Root root = getRoot();
-
- //
- // Make sure descriptor.template points to a real template
- //
- ServerTemplate t = root.findServerTemplate(descriptor.template);
-
- if(t == null)
- {
- if(root.getServerTemplates().getChildCount() == 0)
- {
- JOptionPane.showMessageDialog(
- getCoordinator().getMainFrame(),
- "You need to create a server template before you can create a server from a template.",
- "No Server Template",
- JOptionPane.INFORMATION_MESSAGE);
- return;
- }
-
- t = (ServerTemplate)root.getServerTemplates().getChildAt(0);
- descriptor.template = t.getId();
- descriptor.parameterValues = new java.util.HashMap();
- }
-
- ServerInstance server = new ServerInstance(this, id, descriptor);
- try
- {
- insertServer(server, true);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
- root.setSelectedNode(server);
+ String id = makeNewChildId("NewServer");
+ Root root = getRoot();
+
+ //
+ // Make sure descriptor.template points to a real template
+ //
+ ServerTemplate t = root.findServerTemplate(descriptor.template);
+
+ if(t == null)
+ {
+ if(root.getServerTemplates().getChildCount() == 0)
+ {
+ JOptionPane.showMessageDialog(
+ getCoordinator().getMainFrame(),
+ "You need to create a server template before you can create a server from a template.",
+ "No Server Template",
+ JOptionPane.INFORMATION_MESSAGE);
+ return;
+ }
+
+ t = (ServerTemplate)root.getServerTemplates().getChildAt(0);
+ descriptor.template = t.getId();
+ descriptor.parameterValues = new java.util.HashMap();
+ }
+
+ ServerInstance server = new ServerInstance(this, id, descriptor);
+ try
+ {
+ insertServer(server, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
+ root.setSelectedNode(server);
}
private NodeDescriptor _descriptor;
diff --git a/java/src/IceGridGUI/Application/NodeEditor.java b/java/src/IceGridGUI/Application/NodeEditor.java
index 78ecd6392b3..b8ca49a9302 100755
--- a/java/src/IceGridGUI/Application/NodeEditor.java
+++ b/java/src/IceGridGUI/Application/NodeEditor.java
@@ -32,232 +32,232 @@ class NodeEditor extends Editor
{
protected void buildPropertiesPanel()
{
- super.buildPropertiesPanel();
- _propertiesPanel.setName("Node Properties");
+ super.buildPropertiesPanel();
+ _propertiesPanel.setName("Node Properties");
}
protected boolean applyUpdate(boolean refresh)
{
- Root root = _target.getRoot();
+ Root root = _target.getRoot();
- root.disableSelectionListener();
- try
- {
- if(_target.isEphemeral())
- {
- Nodes nodes = (Nodes)_target.getParent();
- writeDescriptor();
- NodeDescriptor descriptor = (NodeDescriptor)_target.getDescriptor();
- _target.destroy(); // just removes the child
- try
- {
- nodes.tryAdd(_name.getText().trim(), descriptor);
- }
- catch(UpdateFailedException e)
- {
- //
- // Add back ephemeral child
- //
- try
- {
- nodes.insertChild(_target, true);
- }
- catch(UpdateFailedException die)
- {
- assert false;
- }
- root.setSelectedNode(_target);
+ root.disableSelectionListener();
+ try
+ {
+ if(_target.isEphemeral())
+ {
+ Nodes nodes = (Nodes)_target.getParent();
+ writeDescriptor();
+ NodeDescriptor descriptor = (NodeDescriptor)_target.getDescriptor();
+ _target.destroy(); // just removes the child
+ try
+ {
+ nodes.tryAdd(_name.getText().trim(), descriptor);
+ }
+ catch(UpdateFailedException e)
+ {
+ //
+ // Add back ephemeral child
+ //
+ try
+ {
+ nodes.insertChild(_target, true);
+ }
+ catch(UpdateFailedException die)
+ {
+ assert false;
+ }
+ root.setSelectedNode(_target);
- JOptionPane.showMessageDialog(
- root.getCoordinator().getMainFrame(),
- e.toString(),
- "Apply failed",
- JOptionPane.ERROR_MESSAGE);
- return false;
- }
-
- //
- // Success
- //
- _target = nodes.findChildWithDescriptor(descriptor);
- root.updated();
- if(refresh)
- {
- root.setSelectedNode(_target);
- }
- }
- else if(isSimpleUpdate())
- {
- writeDescriptor();
- root.updated();
- ((Node)_target).getEditable().markModified();
- }
- else
- {
- //
- // Save to be able to rollback
- //
- NodeDescriptor savedDescriptor = ((Node)_target).saveDescriptor();
- writeDescriptor();
-
- //
- // Rebuild node; don't need the backup
- // since it's just one node
- //
- java.util.List editables = new java.util.LinkedList();
-
- try
- {
- ((Node)_target).rebuild(editables);
- }
- catch(UpdateFailedException e)
- {
- ((Node)_target).restoreDescriptor(savedDescriptor);
- JOptionPane.showMessageDialog(
- root.getCoordinator().getMainFrame(),
- e.toString(),
- "Apply failed",
- JOptionPane.ERROR_MESSAGE);
- return false;
- }
-
- java.util.Iterator p = editables.iterator();
- while(p.hasNext())
- {
- Editable editable = (Editable)p.next();
- editable.markModified();
- }
+ JOptionPane.showMessageDialog(
+ root.getCoordinator().getMainFrame(),
+ e.toString(),
+ "Apply failed",
+ JOptionPane.ERROR_MESSAGE);
+ return false;
+ }
+
+ //
+ // Success
+ //
+ _target = nodes.findChildWithDescriptor(descriptor);
+ root.updated();
+ if(refresh)
+ {
+ root.setSelectedNode(_target);
+ }
+ }
+ else if(isSimpleUpdate())
+ {
+ writeDescriptor();
+ root.updated();
+ ((Node)_target).getEditable().markModified();
+ }
+ else
+ {
+ //
+ // Save to be able to rollback
+ //
+ NodeDescriptor savedDescriptor = ((Node)_target).saveDescriptor();
+ writeDescriptor();
+
+ //
+ // Rebuild node; don't need the backup
+ // since it's just one node
+ //
+ java.util.List editables = new java.util.LinkedList();
+
+ try
+ {
+ ((Node)_target).rebuild(editables);
+ }
+ catch(UpdateFailedException e)
+ {
+ ((Node)_target).restoreDescriptor(savedDescriptor);
+ JOptionPane.showMessageDialog(
+ root.getCoordinator().getMainFrame(),
+ e.toString(),
+ "Apply failed",
+ JOptionPane.ERROR_MESSAGE);
+ return false;
+ }
+
+ java.util.Iterator p = editables.iterator();
+ while(p.hasNext())
+ {
+ Editable editable = (Editable)p.next();
+ editable.markModified();
+ }
- ((Node)_target).getEditable().markModified();
- root.updated();
- }
+ ((Node)_target).getEditable().markModified();
+ root.updated();
+ }
- if(refresh)
- {
- root.getCoordinator().getCurrentTab().showNode(_target);
- }
- _applyButton.setEnabled(false);
- _discardButton.setEnabled(false);
- return true;
- }
- finally
- {
- root.enableSelectionListener();
- }
+ if(refresh)
+ {
+ root.getCoordinator().getCurrentTab().showNode(_target);
+ }
+ _applyButton.setEnabled(false);
+ _discardButton.setEnabled(false);
+ return true;
+ }
+ finally
+ {
+ root.enableSelectionListener();
+ }
}
Utils.Resolver getDetailResolver()
{
- if(_target.getCoordinator().substitute())
- {
- return _target.getResolver();
- }
- else
- {
- return null;
- }
+ if(_target.getCoordinator().substitute())
+ {
+ return _target.getResolver();
+ }
+ else
+ {
+ return null;
+ }
}
NodeEditor()
{
- _name.getDocument().addDocumentListener(_updateListener);
- _name.setToolTipText("Must match the IceGrid.Node.Name property of the desired icegridnode process");
- _description.getDocument().addDocumentListener(_updateListener);
- _description.setToolTipText("An optional description for this node");
-
- //
- // Variables
- //
- _variables = new MapField(this, "Name", "Value", false);
+ _name.getDocument().addDocumentListener(_updateListener);
+ _name.setToolTipText("Must match the IceGrid.Node.Name property of the desired icegridnode process");
+ _description.getDocument().addDocumentListener(_updateListener);
+ _description.setToolTipText("An optional description for this node");
+
+ //
+ // Variables
+ //
+ _variables = new MapField(this, "Name", "Value", false);
- _loadFactor.getDocument().addDocumentListener(_updateListener);
- _loadFactor.setToolTipText("<html>A floating point value.<br>"
- + "When not specified, IceGrid uses 1.0 on all platforms<br>"
- + "except Windows where it uses 1.0 divided by <i>number of processors</i>.<html>");
+ _loadFactor.getDocument().addDocumentListener(_updateListener);
+ _loadFactor.setToolTipText("<html>A floating point value.<br>"
+ + "When not specified, IceGrid uses 1.0 on all platforms<br>"
+ + "except Windows where it uses 1.0 divided by <i>number of processors</i>.<html>");
}
protected void appendProperties(DefaultFormBuilder builder)
{
- builder.append("Name");
- builder.append(_name, 3);
- builder.nextLine();
+ builder.append("Name");
+ builder.append(_name, 3);
+ builder.nextLine();
- builder.append("Description");
- builder.nextLine();
- builder.append("");
- builder.nextRow(-2);
- CellConstraints cc = new CellConstraints();
- JScrollPane scrollPane = new JScrollPane(_description);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 3));
- builder.nextRow(2);
- builder.nextLine();
+ builder.append("Description");
+ builder.nextLine();
+ builder.append("");
+ builder.nextRow(-2);
+ CellConstraints cc = new CellConstraints();
+ JScrollPane scrollPane = new JScrollPane(_description);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 3));
+ builder.nextRow(2);
+ builder.nextLine();
- builder.append("Variables");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
- builder.nextRow(-6);
- scrollPane = new JScrollPane(_variables);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
- builder.nextRow(6);
- builder.nextLine();
+ builder.append("Variables");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+ builder.nextRow(-6);
+ scrollPane = new JScrollPane(_variables);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
+ builder.nextRow(6);
+ builder.nextLine();
- builder.append("Load Factor");
- builder.append(_loadFactor, 3);
- builder.nextLine();
+ builder.append("Load Factor");
+ builder.append(_loadFactor, 3);
+ builder.nextLine();
}
boolean isSimpleUpdate()
{
- NodeDescriptor descriptor = (NodeDescriptor)_target.getDescriptor();
- return (_variables.get().equals(descriptor.variables));
+ NodeDescriptor descriptor = (NodeDescriptor)_target.getDescriptor();
+ return (_variables.get().equals(descriptor.variables));
}
void writeDescriptor()
{
- NodeDescriptor descriptor = (NodeDescriptor)_target.getDescriptor();
- descriptor.description = _description.getText();
- descriptor.variables = _variables.get();
- descriptor.loadFactor = _loadFactor.getText().trim();
- }
+ NodeDescriptor descriptor = (NodeDescriptor)_target.getDescriptor();
+ descriptor.description = _description.getText();
+ descriptor.variables = _variables.get();
+ descriptor.loadFactor = _loadFactor.getText().trim();
+ }
protected boolean validate()
{
- return check(new String[]{"Name", _name.getText().trim()});
+ return check(new String[]{"Name", _name.getText().trim()});
}
void show(Node node)
{
- detectUpdates(false);
- _target = node;
-
- Utils.Resolver resolver = getDetailResolver();
- boolean isEditable = (resolver == null);
+ detectUpdates(false);
+ _target = node;
+
+ Utils.Resolver resolver = getDetailResolver();
+ boolean isEditable = (resolver == null);
- _name.setText(_target.getId());
- _name.setEditable(_target.isEphemeral());
-
- NodeDescriptor descriptor = (NodeDescriptor)_target.getDescriptor();
+ _name.setText(_target.getId());
+ _name.setEditable(_target.isEphemeral());
+
+ NodeDescriptor descriptor = (NodeDescriptor)_target.getDescriptor();
- _description.setText(
- Utils.substitute(descriptor.description, resolver));
- _description.setEditable(isEditable);
- _description.setOpaque(isEditable);
+ _description.setText(
+ Utils.substitute(descriptor.description, resolver));
+ _description.setEditable(isEditable);
+ _description.setOpaque(isEditable);
- _variables.set(descriptor.variables, resolver, isEditable);
+ _variables.set(descriptor.variables, resolver, isEditable);
- _loadFactor.setText(
- Utils.substitute(descriptor.loadFactor, resolver));
- _loadFactor.setEditable(isEditable);
+ _loadFactor.setText(
+ Utils.substitute(descriptor.loadFactor, resolver));
+ _loadFactor.setEditable(isEditable);
- _applyButton.setEnabled(node.isEphemeral());
- _discardButton.setEnabled(node.isEphemeral());
- detectUpdates(true);
+ _applyButton.setEnabled(node.isEphemeral());
+ _discardButton.setEnabled(node.isEphemeral());
+ detectUpdates(true);
}
private JTextField _name = new JTextField(20);
diff --git a/java/src/IceGridGUI/Application/Nodes.java b/java/src/IceGridGUI/Application/Nodes.java
index c8c021d5ce1..5da3acee87d 100755
--- a/java/src/IceGridGUI/Application/Nodes.java
+++ b/java/src/IceGridGUI/Application/Nodes.java
@@ -22,75 +22,75 @@ class Nodes extends ListTreeNode
static public java.util.Map
copyDescriptors(java.util.Map descriptors)
{
- java.util.Map copy = new java.util.HashMap();
- java.util.Iterator p = descriptors.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
-
- copy.put(entry.getKey(),
- Node.copyDescriptor(
- (NodeDescriptor)entry.getValue()));
- }
- return copy;
+ java.util.Map copy = new java.util.HashMap();
+ java.util.Iterator p = descriptors.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+
+ copy.put(entry.getKey(),
+ Node.copyDescriptor(
+ (NodeDescriptor)entry.getValue()));
+ }
+ return copy;
}
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
+ boolean[] actions = new boolean[ACTION_COUNT];
- Object descriptor = getCoordinator().getClipboard();
- if(descriptor != null)
- {
- actions[PASTE] = descriptor instanceof NodeDescriptor;
- }
- actions[NEW_NODE] = true;
- return actions;
+ Object descriptor = getCoordinator().getClipboard();
+ if(descriptor != null)
+ {
+ actions[PASTE] = descriptor instanceof NodeDescriptor;
+ }
+ actions[NEW_NODE] = true;
+ return actions;
}
public JPopupMenu getPopupMenu()
{
- ApplicationActions actions = getCoordinator().getActionsForPopup();
- if(_popup == null)
- {
- _popup = new JPopupMenu();
- _popup.add(actions.get(NEW_NODE));
- }
- actions.setTarget(this);
- return _popup;
+ ApplicationActions actions = getCoordinator().getActionsForPopup();
+ if(_popup == null)
+ {
+ _popup = new JPopupMenu();
+ _popup.add(actions.get(NEW_NODE));
+ }
+ actions.setTarget(this);
+ return _popup;
}
public void paste()
{
- Object descriptor = getCoordinator().getClipboard();
- newNode(Node.copyDescriptor((NodeDescriptor)descriptor));
+ Object descriptor = getCoordinator().getClipboard();
+ newNode(Node.copyDescriptor((NodeDescriptor)descriptor));
}
public void newNode()
{
- newNode(new NodeDescriptor(
- new java.util.TreeMap(),
- new java.util.LinkedList(),
- new java.util.LinkedList(),
- "",
- "",
- new java.util.HashMap()));
+ newNode(new NodeDescriptor(
+ new java.util.TreeMap(),
+ new java.util.LinkedList(),
+ new java.util.LinkedList(),
+ "",
+ "",
+ new java.util.HashMap()));
}
Nodes(TreeNode parent, java.util.Map descriptors)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- super(false, parent, "Nodes");
- _descriptors = descriptors;
+ super(false, parent, "Nodes");
+ _descriptors = descriptors;
- java.util.Iterator p = _descriptors.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- String nodeName = (String)entry.getKey();
- NodeDescriptor nodeDescriptor = (NodeDescriptor)entry.getValue();
- insertChild(new Node(false, this, nodeName, nodeDescriptor), false);
- }
+ java.util.Iterator p = _descriptors.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ String nodeName = (String)entry.getKey();
+ NodeDescriptor nodeDescriptor = (NodeDescriptor)entry.getValue();
+ insertChild(new Node(false, this, nodeName, nodeDescriptor), false);
+ }
}
//
@@ -99,216 +99,216 @@ class Nodes extends ListTreeNode
//
void rebuild() throws UpdateFailedException
{
- java.util.List backupList = new java.util.Vector();
- java.util.List editables = new java.util.LinkedList();
+ java.util.List backupList = new java.util.Vector();
+ java.util.List editables = new java.util.LinkedList();
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- Node node = (Node)p.next();
- try
- {
- backupList.add(node.rebuild(editables));
- }
- catch(UpdateFailedException e)
- {
- for(int i = backupList.size() - 1; i >= 0; --i)
- {
- ((Node)_children.get(i)).restore((Node.Backup)backupList.get(i));
- }
- throw e;
- }
- }
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ Node node = (Node)p.next();
+ try
+ {
+ backupList.add(node.rebuild(editables));
+ }
+ catch(UpdateFailedException e)
+ {
+ for(int i = backupList.size() - 1; i >= 0; --i)
+ {
+ ((Node)_children.get(i)).restore((Node.Backup)backupList.get(i));
+ }
+ throw e;
+ }
+ }
- //
- // Success
- //
- p = editables.iterator();
- while(p.hasNext())
- {
- Editable editable = (Editable)p.next();
- editable.markModified();
- }
+ //
+ // Success
+ //
+ p = editables.iterator();
+ while(p.hasNext())
+ {
+ Editable editable = (Editable)p.next();
+ editable.markModified();
+ }
}
void commit()
{
- _editable.commit();
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- Node node = (Node)p.next();
- node.commit();
- }
+ _editable.commit();
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ Node node = (Node)p.next();
+ node.commit();
+ }
}
java.util.LinkedList getUpdates()
{
- java.util.LinkedList updates = new java.util.LinkedList();
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- Node node = (Node)p.next();
- NodeUpdateDescriptor d = node.getUpdate();
- if(d != null)
- {
- updates.add(d);
- }
- }
- return updates;
+ java.util.LinkedList updates = new java.util.LinkedList();
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ Node node = (Node)p.next();
+ NodeUpdateDescriptor d = node.getUpdate();
+ if(d != null)
+ {
+ updates.add(d);
+ }
+ }
+ return updates;
}
void removeServerInstances(String templateId)
{
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- Node node = (Node)p.next();
- node.removeServerInstances(templateId);
- }
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ Node node = (Node)p.next();
+ node.removeServerInstances(templateId);
+ }
}
java.util.List findServiceInstances(String template)
{
- java.util.List result = new java.util.LinkedList();
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- Node node = (Node)p.next();
- result.addAll(node.findServiceInstances(template));
- }
- return result;
+ java.util.List result = new java.util.LinkedList();
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ Node node = (Node)p.next();
+ result.addAll(node.findServiceInstances(template));
+ }
+ return result;
}
void removeServiceInstances(String templateId)
{
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- Node node = (Node)p.next();
- node.removeServiceInstances(templateId);
- }
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ Node node = (Node)p.next();
+ node.removeServiceInstances(templateId);
+ }
}
void update(java.util.List updates, String[] removeNodes,
- java.util.Set serverTemplates, java.util.Set serviceTemplates)
- throws UpdateFailedException
+ java.util.Set serverTemplates, java.util.Set serviceTemplates)
+ throws UpdateFailedException
{
- Root root = getRoot();
+ Root root = getRoot();
- //
- // Note: _descriptors has already the nodes removed but
- // needs to get the updated and new NodeDescriptors
- //
+ //
+ // Note: _descriptors has already the nodes removed but
+ // needs to get the updated and new NodeDescriptors
+ //
- //
- // One big set of removes
- //
- removeChildren(removeNodes);
-
- //
- // One big set of updates, followed by inserts
- //
- java.util.Vector newChildren = new java.util.Vector();
- java.util.Set updatedNodes = new java.util.HashSet();
-
- java.util.Iterator p = updates.iterator();
- while(p.hasNext())
- {
- NodeUpdateDescriptor update = (NodeUpdateDescriptor)p.next();
- Node node = findNode(update.name);
+ //
+ // One big set of removes
+ //
+ removeChildren(removeNodes);
+
+ //
+ // One big set of updates, followed by inserts
+ //
+ java.util.Vector newChildren = new java.util.Vector();
+ java.util.Set updatedNodes = new java.util.HashSet();
+
+ java.util.Iterator p = updates.iterator();
+ while(p.hasNext())
+ {
+ NodeUpdateDescriptor update = (NodeUpdateDescriptor)p.next();
+ Node node = findNode(update.name);
- if(node == null)
- {
- NodeDescriptor nodeDescriptor = new NodeDescriptor(update.variables,
- update.serverInstances,
- update.servers,
- update.loadFactor.value,
- update.description.value,
- new java.util.HashMap());
- _descriptors.put(update.name, nodeDescriptor);
- node = new Node(false, this, update.name, nodeDescriptor);
- newChildren.add(node);
- }
- else
- {
- node.update(update, serverTemplates, serviceTemplates);
- updatedNodes.add(node);
- }
- }
+ if(node == null)
+ {
+ NodeDescriptor nodeDescriptor = new NodeDescriptor(update.variables,
+ update.serverInstances,
+ update.servers,
+ update.loadFactor.value,
+ update.description.value,
+ new java.util.HashMap());
+ _descriptors.put(update.name, nodeDescriptor);
+ node = new Node(false, this, update.name, nodeDescriptor);
+ newChildren.add(node);
+ }
+ else
+ {
+ node.update(update, serverTemplates, serviceTemplates);
+ updatedNodes.add(node);
+ }
+ }
- //
- // Some nodes are only affected by template updates
- //
- p = _children.iterator();
- while(p.hasNext())
- {
- Node node = (Node)p.next();
- if(!updatedNodes.contains(node))
- {
- node.update(null, serverTemplates, serviceTemplates);
- }
- }
-
- insertChildren(newChildren, true);
+ //
+ // Some nodes are only affected by template updates
+ //
+ p = _children.iterator();
+ while(p.hasNext())
+ {
+ Node node = (Node)p.next();
+ if(!updatedNodes.contains(node))
+ {
+ node.update(null, serverTemplates, serviceTemplates);
+ }
+ }
+
+ insertChildren(newChildren, true);
}
Node findNode(String nodeName)
{
- return (Node)findChild(nodeName);
+ return (Node)findChild(nodeName);
}
java.util.List findServerInstances(String template)
{
- java.util.List result = new java.util.LinkedList();
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- Node node = (Node)p.next();
- result.addAll(node.findServerInstances(template));
- }
- return result;
+ java.util.List result = new java.util.LinkedList();
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ Node node = (Node)p.next();
+ result.addAll(node.findServerInstances(template));
+ }
+ return result;
}
void addDescriptor(String nodeName, NodeDescriptor descriptor)
{
- _descriptors.put(nodeName, descriptor);
+ _descriptors.put(nodeName, descriptor);
}
void removeDescriptor(String nodeName)
{
- _descriptors.remove(nodeName);
+ _descriptors.remove(nodeName);
}
Object getDescriptor()
{
- return _descriptors;
+ return _descriptors;
}
void tryAdd(String nodeName, NodeDescriptor descriptor)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- Node node = new Node(true, this, nodeName, descriptor);
- insertChild(node, true);
- _descriptors.put(nodeName, descriptor);
+ Node node = new Node(true, this, nodeName, descriptor);
+ insertChild(node, true);
+ _descriptors.put(nodeName, descriptor);
}
private void newNode(NodeDescriptor descriptor)
{
- String name = makeNewChildId("NewNode");
-
- Node node = new Node(this, name, descriptor);
- try
- {
- insertChild(node, true);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
- getRoot().setSelectedNode(node);
+ String name = makeNewChildId("NewNode");
+
+ Node node = new Node(this, name, descriptor);
+ try
+ {
+ insertChild(node, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
+ getRoot().setSelectedNode(node);
}
diff --git a/java/src/IceGridGUI/Application/ParameterValuesField.java b/java/src/IceGridGUI/Application/ParameterValuesField.java
index fbb4cc25b56..8976e461996 100755
--- a/java/src/IceGridGUI/Application/ParameterValuesField.java
+++ b/java/src/IceGridGUI/Application/ParameterValuesField.java
@@ -35,155 +35,155 @@ public class ParameterValuesField extends JTable
{
public ParameterValuesField(Editor editor)
{
- _editor = editor;
+ _editor = editor;
- _columnNames = new java.util.Vector(2);
- _columnNames.add("Name");
- _columnNames.add("Value");
+ _columnNames = new java.util.Vector(2);
+ _columnNames.add("Name");
+ _columnNames.add("Value");
- _useDefaultCombo.setEditable(true);
- _notSetCombo.setEditable(true);
+ _useDefaultCombo.setEditable(true);
+ _notSetCombo.setEditable(true);
}
public void set(java.util.List names,
- java.util.Map values,
- java.util.Map defaultValues,
- final Utils.Resolver resolver)
+ java.util.Map values,
+ java.util.Map defaultValues,
+ final Utils.Resolver resolver)
{
- //
- // Transform map into vector of vectors
- //
- java.util.Vector vector = new java.util.Vector(names.size());
- java.util.Iterator p = names.iterator();
-
- _hasDefault = new boolean[names.size()];
- int i = 0;
-
- while(p.hasNext())
- {
- java.util.Vector row = new java.util.Vector(2);
- String name = (String)p.next();
- row.add(name);
-
- _hasDefault[i] = (defaultValues.get(name) != null);
-
- Object val = values.get(name);
- if(val == null)
- {
- row.add(_hasDefault[i] ? _useDefault : _notSet);
- }
- else
- {
- row.add(Utils.substitute((String)val, resolver));
- }
- vector.add(row);
- i++;
- }
-
- _model = new DefaultTableModel(vector, _columnNames)
- {
- public boolean isCellEditable(int row, int column)
- {
- if(resolver == null)
- {
- return column > 0;
- }
- else
- {
- return false;
- }
- }
- };
-
- _model.addTableModelListener(new TableModelListener()
- {
- public void tableChanged(TableModelEvent e)
- {
- _editor.updated();
- }
- });
- setModel(_model);
-
- setCellSelectionEnabled(resolver == null);
- setOpaque(resolver == null);
- setPreferredScrollableViewportSize(getPreferredSize());
-
- DefaultTableCellRenderer cr = (DefaultTableCellRenderer)
- getDefaultRenderer(String.class);
- cr.setOpaque(resolver == null);
+ //
+ // Transform map into vector of vectors
+ //
+ java.util.Vector vector = new java.util.Vector(names.size());
+ java.util.Iterator p = names.iterator();
+
+ _hasDefault = new boolean[names.size()];
+ int i = 0;
+
+ while(p.hasNext())
+ {
+ java.util.Vector row = new java.util.Vector(2);
+ String name = (String)p.next();
+ row.add(name);
+
+ _hasDefault[i] = (defaultValues.get(name) != null);
+
+ Object val = values.get(name);
+ if(val == null)
+ {
+ row.add(_hasDefault[i] ? _useDefault : _notSet);
+ }
+ else
+ {
+ row.add(Utils.substitute((String)val, resolver));
+ }
+ vector.add(row);
+ i++;
+ }
+
+ _model = new DefaultTableModel(vector, _columnNames)
+ {
+ public boolean isCellEditable(int row, int column)
+ {
+ if(resolver == null)
+ {
+ return column > 0;
+ }
+ else
+ {
+ return false;
+ }
+ }
+ };
+
+ _model.addTableModelListener(new TableModelListener()
+ {
+ public void tableChanged(TableModelEvent e)
+ {
+ _editor.updated();
+ }
+ });
+ setModel(_model);
+
+ setCellSelectionEnabled(resolver == null);
+ setOpaque(resolver == null);
+ setPreferredScrollableViewportSize(getPreferredSize());
+
+ DefaultTableCellRenderer cr = (DefaultTableCellRenderer)
+ getDefaultRenderer(String.class);
+ cr.setOpaque(resolver == null);
}
public java.util.Map getValues()
{
- java.util.Map values = new java.util.HashMap();
-
- if(isEditing())
- {
- getCellEditor().stopCellEditing();
- }
- java.util.Vector vector = _model.getDataVector();
-
- java.util.Iterator p = vector.iterator();
- while(p.hasNext())
- {
- java.util.Vector row = (java.util.Vector)p.next();
-
- //
- // Eliminate rows with null or empty names
- //
- String name = (String)row.elementAt(0);
- assert name != null;
-
- Object val = row.elementAt(1);
-
- //
- // Eliminate entries with default or not set value
- //
- if(val != _useDefault && val != _notSet)
- {
- assert val != null;
- values.put(name, val);
- }
- }
- return values;
+ java.util.Map values = new java.util.HashMap();
+
+ if(isEditing())
+ {
+ getCellEditor().stopCellEditing();
+ }
+ java.util.Vector vector = _model.getDataVector();
+
+ java.util.Iterator p = vector.iterator();
+ while(p.hasNext())
+ {
+ java.util.Vector row = (java.util.Vector)p.next();
+
+ //
+ // Eliminate rows with null or empty names
+ //
+ String name = (String)row.elementAt(0);
+ assert name != null;
+
+ Object val = row.elementAt(1);
+
+ //
+ // Eliminate entries with default or not set value
+ //
+ if(val != _useDefault && val != _notSet)
+ {
+ assert val != null;
+ values.put(name, val);
+ }
+ }
+ return values;
}
public TableCellEditor getCellEditor(int row,
- int column)
+ int column)
{
- if(column == 1)
- {
- return _hasDefault[row] ? _useDefaultEditor : _notSetEditor;
- }
- else
- {
- return super.getCellEditor(row, column);
- }
+ if(column == 1)
+ {
+ return _hasDefault[row] ? _useDefaultEditor : _notSetEditor;
+ }
+ else
+ {
+ return super.getCellEditor(row, column);
+ }
}
private static final Object _useDefault = new Object()
- {
- public String toString()
- {
- return "Use default";
- }
- };
+ {
+ public String toString()
+ {
+ return "Use default";
+ }
+ };
private static final Object _notSet = new Object()
- {
- public String toString()
- {
- return "Not set";
- }
- };
+ {
+ public String toString()
+ {
+ return "Not set";
+ }
+ };
private JComboBox _useDefaultCombo = new JComboBox(
- new Object[]{_useDefault});
+ new Object[]{_useDefault});
private JComboBox _notSetCombo = new JComboBox(
- new Object[]{_notSet});
+ new Object[]{_notSet});
private TableCellEditor _useDefaultEditor = new DefaultCellEditor(_useDefaultCombo);
private TableCellEditor _notSetEditor = new DefaultCellEditor(_notSetCombo);
diff --git a/java/src/IceGridGUI/Application/ParametersField.java b/java/src/IceGridGUI/Application/ParametersField.java
index c491d28ddd4..aa82c146a81 100755
--- a/java/src/IceGridGUI/Application/ParametersField.java
+++ b/java/src/IceGridGUI/Application/ParametersField.java
@@ -35,155 +35,155 @@ public class ParametersField extends JTable
{
public ParametersField(Editor editor)
{
- _editor = editor;
-
- _columnNames = new java.util.Vector(2);
- _columnNames.add("Name");
- _columnNames.add("Default value");
-
- JComboBox comboBox = new JComboBox(
- new Object[]{_noDefault});
- comboBox.setEditable(true);
- _cellEditor = new DefaultCellEditor(comboBox);
-
- Action deleteRow = new AbstractAction("Delete selected row(s)")
- {
- public void actionPerformed(ActionEvent e)
- {
- if(isEditing())
- {
- getCellEditor().stopCellEditing();
- }
-
- for(;;)
- {
- int selectedRow = getSelectedRow();
- if(selectedRow == -1)
- {
- break;
- }
- else
- {
- _model.removeRow(selectedRow);
- }
- }
- }
- };
- getActionMap().put("delete", deleteRow);
- getInputMap().put(
- KeyStroke.getKeyStroke("DELETE"), "delete");
+ _editor = editor;
+
+ _columnNames = new java.util.Vector(2);
+ _columnNames.add("Name");
+ _columnNames.add("Default value");
+
+ JComboBox comboBox = new JComboBox(
+ new Object[]{_noDefault});
+ comboBox.setEditable(true);
+ _cellEditor = new DefaultCellEditor(comboBox);
+
+ Action deleteRow = new AbstractAction("Delete selected row(s)")
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ if(isEditing())
+ {
+ getCellEditor().stopCellEditing();
+ }
+
+ for(;;)
+ {
+ int selectedRow = getSelectedRow();
+ if(selectedRow == -1)
+ {
+ break;
+ }
+ else
+ {
+ _model.removeRow(selectedRow);
+ }
+ }
+ }
+ };
+ getActionMap().put("delete", deleteRow);
+ getInputMap().put(
+ KeyStroke.getKeyStroke("DELETE"), "delete");
}
public void set(java.util.List names, java.util.Map values)
{
- //
- // Transform map into vector of vectors
- //
- java.util.Vector vector = new java.util.Vector(names.size());
- java.util.Iterator p = names.iterator();
- while(p.hasNext())
- {
- java.util.Vector row = new java.util.Vector(2);
- String name = (String)p.next();
-
- row.add(name);
-
- Object val = values.get(name);
- if(val == null)
- {
- row.add(_noDefault);
- }
- else
- {
- row.add(val);
- }
- vector.add(row);
- }
-
-
- java.util.Vector newRow = new java.util.Vector(2);
- newRow.add("");
- newRow.add(_noDefault);
- vector.add(newRow);
-
- _model = new DefaultTableModel(vector, _columnNames);
-
- _model.addTableModelListener(new TableModelListener()
- {
- public void tableChanged(TableModelEvent e)
- {
- Object lastKey = _model.getValueAt(
- _model.getRowCount() - 1 , 0);
- if(lastKey != null && !lastKey.equals(""))
- {
- _model.addRow(new Object[]{"", _noDefault});
- }
-
- _editor.updated();
- }
- });
- setModel(_model);
-
- TableColumn valColumn = getColumnModel().getColumn(1);
- valColumn.setCellEditor(_cellEditor);
-
- setPreferredScrollableViewportSize(getPreferredSize());
+ //
+ // Transform map into vector of vectors
+ //
+ java.util.Vector vector = new java.util.Vector(names.size());
+ java.util.Iterator p = names.iterator();
+ while(p.hasNext())
+ {
+ java.util.Vector row = new java.util.Vector(2);
+ String name = (String)p.next();
+
+ row.add(name);
+
+ Object val = values.get(name);
+ if(val == null)
+ {
+ row.add(_noDefault);
+ }
+ else
+ {
+ row.add(val);
+ }
+ vector.add(row);
+ }
+
+
+ java.util.Vector newRow = new java.util.Vector(2);
+ newRow.add("");
+ newRow.add(_noDefault);
+ vector.add(newRow);
+
+ _model = new DefaultTableModel(vector, _columnNames);
+
+ _model.addTableModelListener(new TableModelListener()
+ {
+ public void tableChanged(TableModelEvent e)
+ {
+ Object lastKey = _model.getValueAt(
+ _model.getRowCount() - 1 , 0);
+ if(lastKey != null && !lastKey.equals(""))
+ {
+ _model.addRow(new Object[]{"", _noDefault});
+ }
+
+ _editor.updated();
+ }
+ });
+ setModel(_model);
+
+ TableColumn valColumn = getColumnModel().getColumn(1);
+ valColumn.setCellEditor(_cellEditor);
+
+ setPreferredScrollableViewportSize(getPreferredSize());
}
public java.util.Map get(java.util.List names)
{
- assert names != null;
-
- java.util.Map values = new java.util.HashMap();
-
- if(isEditing())
- {
- getCellEditor().stopCellEditing();
- }
- java.util.Vector vector = _model.getDataVector();
-
- java.util.Iterator p = vector.iterator();
- while(p.hasNext())
- {
- java.util.Vector row = (java.util.Vector)p.next();
-
- //
- // Eliminate rows with null or empty names
- //
- String name = (String)row.elementAt(0);
- if(name != null)
- {
- name = name.trim();
-
- if(!name.equals(""))
- {
- names.add(name);
-
- Object val = row.elementAt(1);
-
- //
- // Eliminate entries with "default" value
- //
- if(val != _noDefault)
- {
- assert val != null;
- values.put(name, val);
- }
- }
- }
- }
- return values;
+ assert names != null;
+
+ java.util.Map values = new java.util.HashMap();
+
+ if(isEditing())
+ {
+ getCellEditor().stopCellEditing();
+ }
+ java.util.Vector vector = _model.getDataVector();
+
+ java.util.Iterator p = vector.iterator();
+ while(p.hasNext())
+ {
+ java.util.Vector row = (java.util.Vector)p.next();
+
+ //
+ // Eliminate rows with null or empty names
+ //
+ String name = (String)row.elementAt(0);
+ if(name != null)
+ {
+ name = name.trim();
+
+ if(!name.equals(""))
+ {
+ names.add(name);
+
+ Object val = row.elementAt(1);
+
+ //
+ // Eliminate entries with "default" value
+ //
+ if(val != _noDefault)
+ {
+ assert val != null;
+ values.put(name, val);
+ }
+ }
+ }
+ }
+ return values;
}
private final Object _noDefault = new Object()
- {
- public String toString()
- {
- return "No default";
- }
- };
+ {
+ public String toString()
+ {
+ return "No default";
+ }
+ };
private DefaultTableModel _model;
private java.util.Vector _columnNames;
diff --git a/java/src/IceGridGUI/Application/PlainServer.java b/java/src/IceGridGUI/Application/PlainServer.java
index fdf86d2ea0b..315d4212a5b 100755
--- a/java/src/IceGridGUI/Application/PlainServer.java
+++ b/java/src/IceGridGUI/Application/PlainServer.java
@@ -25,95 +25,95 @@ class PlainServer extends Communicator implements Server
static public ServerDescriptor
copyDescriptor(ServerDescriptor sd)
{
- ServerDescriptor copy = (ServerDescriptor)sd.clone();
+ ServerDescriptor copy = (ServerDescriptor)sd.clone();
- copy.adapters = Adapter.copyDescriptors(copy.adapters);
- copy.dbEnvs = DbEnv.copyDescriptors(copy.dbEnvs);
+ copy.adapters = Adapter.copyDescriptors(copy.adapters);
+ copy.dbEnvs = DbEnv.copyDescriptors(copy.dbEnvs);
- copy.propertySet = PropertySet.copyDescriptor(copy.propertySet);
-
- copy.distrib = (DistributionDescriptor)copy.distrib.clone();
+ copy.propertySet = PropertySet.copyDescriptor(copy.propertySet);
+
+ copy.distrib = (DistributionDescriptor)copy.distrib.clone();
- if(copy instanceof IceBoxDescriptor)
- {
- IceBoxDescriptor ib = (IceBoxDescriptor)copy;
- ib.services = ServiceInstance.copyDescriptors(ib.services);
- }
- return copy;
+ if(copy instanceof IceBoxDescriptor)
+ {
+ IceBoxDescriptor ib = (IceBoxDescriptor)copy;
+ ib.services = ServiceInstance.copyDescriptors(ib.services);
+ }
+ return copy;
}
static public void shallowRestore(ServerDescriptor from, ServerDescriptor into)
{
- //
- // When editing a server or server template, if we update properties,
- // we replace the entire field
- //
- into.propertySet = from.propertySet;
- into.description = from.description;
- into.id = from.id;
- into.exe = from.exe;
- into.options = from.options;
- into.envs = from.envs;
- into.activation = from.activation;
- into.activationTimeout = from.activationTimeout;
- into.deactivationTimeout = from.deactivationTimeout;
- into.applicationDistrib = from.applicationDistrib;
- into.distrib.icepatch = from.distrib.icepatch;
- into.distrib.directories = from.distrib.directories;
+ //
+ // When editing a server or server template, if we update properties,
+ // we replace the entire field
+ //
+ into.propertySet = from.propertySet;
+ into.description = from.description;
+ into.id = from.id;
+ into.exe = from.exe;
+ into.options = from.options;
+ into.envs = from.envs;
+ into.activation = from.activation;
+ into.activationTimeout = from.activationTimeout;
+ into.deactivationTimeout = from.deactivationTimeout;
+ into.applicationDistrib = from.applicationDistrib;
+ into.distrib.icepatch = from.distrib.icepatch;
+ into.distrib.directories = from.distrib.directories;
}
static public ServerDescriptor newServerDescriptor()
{
- return new ServerDescriptor(
- new java.util.LinkedList(),
- new PropertySetDescriptor(new String[0], new java.util.LinkedList()),
- new java.util.LinkedList(),
- new String[0],
- "",
- "NewServer",
- "",
- "",
- new java.util.LinkedList(),
- new java.util.LinkedList(),
- "manual",
- "",
- "",
- true,
- new DistributionDescriptor("", new java.util.LinkedList()),
- false, // Allocatable
- "",
- "" // Ice version
- );
+ return new ServerDescriptor(
+ new java.util.LinkedList(),
+ new PropertySetDescriptor(new String[0], new java.util.LinkedList()),
+ new java.util.LinkedList(),
+ new String[0],
+ "",
+ "NewServer",
+ "",
+ "",
+ new java.util.LinkedList(),
+ new java.util.LinkedList(),
+ "manual",
+ "",
+ "",
+ true,
+ new DistributionDescriptor("", new java.util.LinkedList()),
+ false, // Allocatable
+ "",
+ "" // Ice version
+ );
}
static public IceBoxDescriptor newIceBoxDescriptor()
{
- java.util.LinkedList properties = new java.util.LinkedList();
- properties.add(new PropertyDescriptor("IceBox.InstanceName", "${server}"));
- properties.add(new PropertyDescriptor("Ice.OA.IceBox.ServiceManager.Endpoints", "tcp -h 127.0.0.1"));
- properties.add(new PropertyDescriptor("Ice.OA.IceBox.ServiceManager.RegisterProcess", "1"));
-
- return new IceBoxDescriptor(
- new java.util.LinkedList(),
- new PropertySetDescriptor(new String[0], properties),
- new java.util.LinkedList(),
- new String[0],
- "",
- "NewIceBox",
- "",
- "",
- new java.util.LinkedList(),
- new java.util.LinkedList(),
- "manual",
- "",
- "",
- true,
- new DistributionDescriptor("", new java.util.LinkedList()),
- false, // Allocatable
- "",
- "", // Ice version
- new java.util.LinkedList()
- );
+ java.util.LinkedList properties = new java.util.LinkedList();
+ properties.add(new PropertyDescriptor("IceBox.InstanceName", "${server}"));
+ properties.add(new PropertyDescriptor("Ice.OA.IceBox.ServiceManager.Endpoints", "tcp -h 127.0.0.1"));
+ properties.add(new PropertyDescriptor("Ice.OA.IceBox.ServiceManager.RegisterProcess", "1"));
+
+ return new IceBoxDescriptor(
+ new java.util.LinkedList(),
+ new PropertySetDescriptor(new String[0], properties),
+ new java.util.LinkedList(),
+ new String[0],
+ "",
+ "NewIceBox",
+ "",
+ "",
+ new java.util.LinkedList(),
+ new java.util.LinkedList(),
+ "manual",
+ "",
+ "",
+ true,
+ new DistributionDescriptor("", new java.util.LinkedList()),
+ false, // Allocatable
+ "",
+ "", // Ice version
+ new java.util.LinkedList()
+ );
}
//
@@ -121,412 +121,412 @@ class PlainServer extends Communicator implements Server
//
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
-
- Object clipboard = getCoordinator().getClipboard();
- if(clipboard != null &&
- (clipboard instanceof ServerDescriptor
- || clipboard instanceof ServerInstanceDescriptor
- || (isIceBox() && (clipboard instanceof ServiceInstanceDescriptor))
- || (!isIceBox() && (clipboard instanceof AdapterDescriptor
- || clipboard instanceof DbEnvDescriptor))))
- {
- actions[PASTE] = true;
- }
-
- actions[DELETE] = true;
- if(!_ephemeral)
- {
- actions[COPY] = true;
- actions[SHOW_VARS] = true;
- actions[SUBSTITUTE_VARS] = true;
-
- actions[NEW_ADAPTER] = !_services.initialized();
- actions[NEW_DBENV] = !_services.initialized();
- actions[NEW_SERVICE] = _services.initialized();
- actions[NEW_SERVICE_FROM_TEMPLATE] = _services.initialized();
- }
- return actions;
+ boolean[] actions = new boolean[ACTION_COUNT];
+
+ Object clipboard = getCoordinator().getClipboard();
+ if(clipboard != null &&
+ (clipboard instanceof ServerDescriptor
+ || clipboard instanceof ServerInstanceDescriptor
+ || (isIceBox() && (clipboard instanceof ServiceInstanceDescriptor))
+ || (!isIceBox() && (clipboard instanceof AdapterDescriptor
+ || clipboard instanceof DbEnvDescriptor))))
+ {
+ actions[PASTE] = true;
+ }
+
+ actions[DELETE] = true;
+ if(!_ephemeral)
+ {
+ actions[COPY] = true;
+ actions[SHOW_VARS] = true;
+ actions[SUBSTITUTE_VARS] = true;
+
+ actions[NEW_ADAPTER] = !_services.initialized();
+ actions[NEW_DBENV] = !_services.initialized();
+ actions[NEW_SERVICE] = _services.initialized();
+ actions[NEW_SERVICE_FROM_TEMPLATE] = _services.initialized();
+ }
+ return actions;
}
public JPopupMenu getPopupMenu()
{
- ApplicationActions actions = getCoordinator().getActionsForPopup();
- if(_popup == null)
- {
- _popup = new JPopupMenu();
- _popup.add(actions.get(NEW_ADAPTER));
- _popup.add(actions.get(NEW_DBENV));
- _popup.add(actions.get(NEW_SERVICE));
- _popup.add(actions.get(NEW_SERVICE_FROM_TEMPLATE));
- }
- actions.setTarget(this);
- return _popup;
+ ApplicationActions actions = getCoordinator().getActionsForPopup();
+ if(_popup == null)
+ {
+ _popup = new JPopupMenu();
+ _popup.add(actions.get(NEW_ADAPTER));
+ _popup.add(actions.get(NEW_DBENV));
+ _popup.add(actions.get(NEW_SERVICE));
+ _popup.add(actions.get(NEW_SERVICE_FROM_TEMPLATE));
+ }
+ actions.setTarget(this);
+ return _popup;
}
public void copy()
{
- getCoordinator().setClipboard(copyDescriptor(_descriptor));
- getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
+ getCoordinator().setClipboard(copyDescriptor(_descriptor));
+ getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
}
public Editor getEditor()
{
- if(_editor == null)
- {
- _editor = (PlainServerEditor)getRoot().getEditor(PlainServerEditor.class, this);
- }
- _editor.show(this);
- return _editor;
+ if(_editor == null)
+ {
+ _editor = (PlainServerEditor)getRoot().getEditor(PlainServerEditor.class, this);
+ }
+ _editor.show(this);
+ return _editor;
}
protected Editor createEditor()
{
- return new PlainServerEditor();
+ return new PlainServerEditor();
}
-
+
public Component getTreeCellRendererComponent(
- JTree tree,
- Object value,
- boolean sel,
- boolean expanded,
- boolean leaf,
- int row,
- boolean hasFocus)
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
{
- if(_cellRenderer == null)
- {
- //
- // Initialization
- //
- _cellRenderer = new DefaultTreeCellRenderer();
-
- _serverIcon = Utils.getIcon("/icons/16x16/server_inactive.png");
- _iceboxServerIcon = Utils.getIcon("/icons/16x16/icebox_server_inactive.png");
- }
-
- if(expanded)
- {
- _cellRenderer.setOpenIcon(isIceBox() ? _iceboxServerIcon : _serverIcon);
- }
- else
- {
- _cellRenderer.setClosedIcon(isIceBox() ? _iceboxServerIcon : _serverIcon);
- }
- return _cellRenderer.getTreeCellRendererComponent(
- tree, value, sel, expanded, leaf, row, hasFocus);
+ if(_cellRenderer == null)
+ {
+ //
+ // Initialization
+ //
+ _cellRenderer = new DefaultTreeCellRenderer();
+
+ _serverIcon = Utils.getIcon("/icons/16x16/server_inactive.png");
+ _iceboxServerIcon = Utils.getIcon("/icons/16x16/icebox_server_inactive.png");
+ }
+
+ if(expanded)
+ {
+ _cellRenderer.setOpenIcon(isIceBox() ? _iceboxServerIcon : _serverIcon);
+ }
+ else
+ {
+ _cellRenderer.setClosedIcon(isIceBox() ? _iceboxServerIcon : _serverIcon);
+ }
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
}
public void destroy()
{
- Node node = (Node)_parent;
-
- if(_ephemeral)
- {
- node.removeServer(this);
- }
- else
- {
- node.removeDescriptor(_descriptor);
- node.removeServer(this);
- node.getEditable().removeElement(_id, _editable, Server.class);
- getRoot().updated();
- }
+ Node node = (Node)_parent;
+
+ if(_ephemeral)
+ {
+ node.removeServer(this);
+ }
+ else
+ {
+ node.removeDescriptor(_descriptor);
+ node.removeServer(this);
+ node.getEditable().removeElement(_id, _editable, Server.class);
+ getRoot().updated();
+ }
}
public Object getDescriptor()
{
- return _descriptor;
+ return _descriptor;
}
public Object saveDescriptor()
{
- ServerDescriptor clone = (ServerDescriptor)_descriptor.clone();
- clone.distrib = (DistributionDescriptor)clone.distrib.clone();
- return clone;
+ ServerDescriptor clone = (ServerDescriptor)_descriptor.clone();
+ clone.distrib = (DistributionDescriptor)clone.distrib.clone();
+ return clone;
}
public void restoreDescriptor(Object savedDescriptor)
{
- shallowRestore((ServerDescriptor)savedDescriptor, _descriptor);
+ shallowRestore((ServerDescriptor)savedDescriptor, _descriptor);
}
//
// Builds the server and all its sub-tree
//
PlainServer(boolean brandNew, TreeNode parent, String serverId,
- Utils.Resolver resolver, ServerDescriptor serverDescriptor)
- throws UpdateFailedException
+ Utils.Resolver resolver, ServerDescriptor serverDescriptor)
+ throws UpdateFailedException
{
- super(parent, serverId);
- _ephemeral = false;
- _editable = new Editable(brandNew);
- rebuild(resolver, serverDescriptor);
+ super(parent, serverId);
+ _ephemeral = false;
+ _editable = new Editable(brandNew);
+ rebuild(resolver, serverDescriptor);
}
PlainServer(TreeNode parent, String serverId, ServerDescriptor serverDescriptor)
{
- super(parent, serverId);
- _ephemeral = true;
- _editable = null;
- try
- {
- rebuild(null, serverDescriptor);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
+ super(parent, serverId);
+ _ephemeral = true;
+ _editable = null;
+ try
+ {
+ rebuild(null, serverDescriptor);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
}
static java.util.List createAttributes(ServerDescriptor descriptor)
{
- java.util.List attributes = new java.util.LinkedList();
- attributes.add(createAttribute("id", descriptor.id));
- if(descriptor.activation.length() > 0)
- {
- attributes.add(createAttribute("activation",
- descriptor.activation));
- }
- if(descriptor.activationTimeout.length() > 0)
- {
- attributes.add(createAttribute("activation-timeout",
- descriptor.activationTimeout));
- }
- if(!descriptor.applicationDistrib)
- {
- attributes.add(createAttribute("application-distrib", "false"));
- }
- if(descriptor.deactivationTimeout.length() > 0)
- {
- attributes.add(createAttribute("deactivation-timeout",
- descriptor.deactivationTimeout));
- }
- if(descriptor.exe.length() > 0)
- {
- attributes.add(createAttribute("exe", descriptor.exe));
- }
- if(descriptor.pwd.length() > 0)
- {
- attributes.add(createAttribute("pwd", descriptor.pwd));
- }
-
- return attributes;
+ java.util.List attributes = new java.util.LinkedList();
+ attributes.add(createAttribute("id", descriptor.id));
+ if(descriptor.activation.length() > 0)
+ {
+ attributes.add(createAttribute("activation",
+ descriptor.activation));
+ }
+ if(descriptor.activationTimeout.length() > 0)
+ {
+ attributes.add(createAttribute("activation-timeout",
+ descriptor.activationTimeout));
+ }
+ if(!descriptor.applicationDistrib)
+ {
+ attributes.add(createAttribute("application-distrib", "false"));
+ }
+ if(descriptor.deactivationTimeout.length() > 0)
+ {
+ attributes.add(createAttribute("deactivation-timeout",
+ descriptor.deactivationTimeout));
+ }
+ if(descriptor.exe.length() > 0)
+ {
+ attributes.add(createAttribute("exe", descriptor.exe));
+ }
+ if(descriptor.pwd.length() > 0)
+ {
+ attributes.add(createAttribute("pwd", descriptor.pwd));
+ }
+
+ return attributes;
}
static void writeOptions(XMLWriter writer, java.util.List options)
- throws java.io.IOException
+ throws java.io.IOException
{
- java.util.Iterator p = options.iterator();
- while(p.hasNext())
- {
- writer.writeElement("option", (String)p.next());
- }
+ java.util.Iterator p = options.iterator();
+ while(p.hasNext())
+ {
+ writer.writeElement("option", (String)p.next());
+ }
}
static void writeEnvs(XMLWriter writer, java.util.List envs)
- throws java.io.IOException
+ throws java.io.IOException
{
- java.util.Iterator p = envs.iterator();
- while(p.hasNext())
- {
- writer.writeElement("env", (String)p.next());
- }
+ java.util.Iterator p = envs.iterator();
+ while(p.hasNext())
+ {
+ writer.writeElement("env", (String)p.next());
+ }
}
void write(XMLWriter writer) throws java.io.IOException
{
- if(!_ephemeral)
- {
- if(isIceBox())
- {
- writer.writeStartTag("icebox",
- createAttributes(_descriptor));
-
- if(_descriptor.description.length() > 0)
- {
- writer.writeElement("description", _descriptor.description);
- }
- writeOptions(writer, _descriptor.options);
- writeEnvs(writer, _descriptor.envs);
-
- writePropertySet(writer, "", "", _descriptor.propertySet,
- _descriptor.adapters, _descriptor.logs);
- writeLogs(writer, _descriptor.logs, _descriptor.propertySet.properties);
- writeDistribution(writer, _descriptor.distrib);
-
- _adapters.write(writer, _descriptor.propertySet.properties);
- _services.write(writer);
- writer.writeEndTag("icebox");
- }
- else
- {
- writer.writeStartTag("server", createAttributes(_descriptor));
-
- if(_descriptor.description.length() > 0)
- {
- writer.writeElement("description", _descriptor.description);
- }
-
- writeOptions(writer, _descriptor.options);
- writeEnvs(writer, _descriptor.envs);
-
- writePropertySet(writer, _descriptor.propertySet, _descriptor.adapters, _descriptor.logs);
- writeLogs(writer, _descriptor.logs, _descriptor.propertySet.properties);
- writeDistribution(writer, _descriptor.distrib);
-
- _adapters.write(writer, _descriptor.propertySet.properties);
- _dbEnvs.write(writer);
- writer.writeEndTag("server");
- }
- }
+ if(!_ephemeral)
+ {
+ if(isIceBox())
+ {
+ writer.writeStartTag("icebox",
+ createAttributes(_descriptor));
+
+ if(_descriptor.description.length() > 0)
+ {
+ writer.writeElement("description", _descriptor.description);
+ }
+ writeOptions(writer, _descriptor.options);
+ writeEnvs(writer, _descriptor.envs);
+
+ writePropertySet(writer, "", "", _descriptor.propertySet,
+ _descriptor.adapters, _descriptor.logs);
+ writeLogs(writer, _descriptor.logs, _descriptor.propertySet.properties);
+ writeDistribution(writer, _descriptor.distrib);
+
+ _adapters.write(writer, _descriptor.propertySet.properties);
+ _services.write(writer);
+ writer.writeEndTag("icebox");
+ }
+ else
+ {
+ writer.writeStartTag("server", createAttributes(_descriptor));
+
+ if(_descriptor.description.length() > 0)
+ {
+ writer.writeElement("description", _descriptor.description);
+ }
+
+ writeOptions(writer, _descriptor.options);
+ writeEnvs(writer, _descriptor.envs);
+
+ writePropertySet(writer, _descriptor.propertySet, _descriptor.adapters, _descriptor.logs);
+ writeLogs(writer, _descriptor.logs, _descriptor.propertySet.properties);
+ writeDistribution(writer, _descriptor.distrib);
+
+ _adapters.write(writer, _descriptor.propertySet.properties);
+ _dbEnvs.write(writer);
+ writer.writeEndTag("server");
+ }
+ }
}
boolean isIceBox()
{
- return _descriptor instanceof IceBoxDescriptor;
+ return _descriptor instanceof IceBoxDescriptor;
}
public Object rebuild(java.util.List editables) throws UpdateFailedException
{
- Node node = (Node)_parent;
- PlainServer newServer = node.createServer(false, _descriptor);
-
- Object backup = null;
-
- if(_id.equals(newServer.getId()))
- {
- //
- // A simple update. We can't simply rebuild server because
- // we need to keep a backup
- //
- if(_editable.isModified())
- {
- newServer.getEditable().markModified();
- }
-
- node.removeServer(this);
- try
- {
- node.insertServer(newServer, true);
- }
- catch(UpdateFailedException e)
- {
- assert false; // impossible, we just removed a child with
- // this id
- }
- }
- else
- {
- //
- // Typically, the id uses a variable whose definition changed
- //
- newServer.getEditable().markNew();
- node.removeServer(this);
- backup = node.getEditable().save();
- node.getEditable().removeElement(_id, _editable, Server.class);
-
- try
- {
- node.insertServer(newServer, true);
- }
- catch(UpdateFailedException e)
- {
- restore(backup);
- throw e;
- }
- }
-
- return backup;
+ Node node = (Node)_parent;
+ PlainServer newServer = node.createServer(false, _descriptor);
+
+ Object backup = null;
+
+ if(_id.equals(newServer.getId()))
+ {
+ //
+ // A simple update. We can't simply rebuild server because
+ // we need to keep a backup
+ //
+ if(_editable.isModified())
+ {
+ newServer.getEditable().markModified();
+ }
+
+ node.removeServer(this);
+ try
+ {
+ node.insertServer(newServer, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false; // impossible, we just removed a child with
+ // this id
+ }
+ }
+ else
+ {
+ //
+ // Typically, the id uses a variable whose definition changed
+ //
+ newServer.getEditable().markNew();
+ node.removeServer(this);
+ backup = node.getEditable().save();
+ node.getEditable().removeElement(_id, _editable, Server.class);
+
+ try
+ {
+ node.insertServer(newServer, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ restore(backup);
+ throw e;
+ }
+ }
+
+ return backup;
}
public void restore(Object backupObj)
{
- Editable backup = (Editable)backupObj;
- Node node = (Node)_parent;
-
- if(backup != null)
- {
- node.getEditable().restore(backup);
- }
-
- TreeNode badServer = node.findChildWithDescriptor(_descriptor);
-
- if(badServer != null)
- {
- node.removeServer(badServer);
- }
- try
- {
- node.insertServer(this, true);
- }
- catch(UpdateFailedException e)
- {
- assert false; // impossible
- }
+ Editable backup = (Editable)backupObj;
+ Node node = (Node)_parent;
+
+ if(backup != null)
+ {
+ node.getEditable().restore(backup);
+ }
+
+ TreeNode badServer = node.findChildWithDescriptor(_descriptor);
+
+ if(badServer != null)
+ {
+ node.removeServer(badServer);
+ }
+ try
+ {
+ node.insertServer(this, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false; // impossible
+ }
}
void setServerDescriptor(ServerDescriptor descriptor)
{
- _descriptor = descriptor;
+ _descriptor = descriptor;
}
//
// Update the server and all its subtree
//
void rebuild(Utils.Resolver resolver,
- ServerDescriptor serverDescriptor) throws UpdateFailedException
+ ServerDescriptor serverDescriptor) throws UpdateFailedException
{
- assert serverDescriptor != null;
- _resolver = resolver;
- _descriptor = serverDescriptor;
-
- _adapters.clear();
- _dbEnvs.clear();
- _services.clear();
-
- if(!_ephemeral)
- {
- _adapters.init(_descriptor.adapters);
- if(isIceBox())
- {
- IceBoxDescriptor iceBoxDescriptor = (IceBoxDescriptor)_descriptor;
- _services.init(iceBoxDescriptor.services);
+ assert serverDescriptor != null;
+ _resolver = resolver;
+ _descriptor = serverDescriptor;
+
+ _adapters.clear();
+ _dbEnvs.clear();
+ _services.clear();
+
+ if(!_ephemeral)
+ {
+ _adapters.init(_descriptor.adapters);
+ if(isIceBox())
+ {
+ IceBoxDescriptor iceBoxDescriptor = (IceBoxDescriptor)_descriptor;
+ _services.init(iceBoxDescriptor.services);
- //
- // IceBox has not dbEnv
- //
- assert _descriptor.dbEnvs.size() == 0;
- }
- else
- {
- _dbEnvs.init(_descriptor.dbEnvs);
- }
- }
+ //
+ // IceBox has not dbEnv
+ //
+ assert _descriptor.dbEnvs.size() == 0;
+ }
+ else
+ {
+ _dbEnvs.init(_descriptor.dbEnvs);
+ }
+ }
}
CommunicatorDescriptor getCommunicatorDescriptor()
{
- return _descriptor;
+ return _descriptor;
}
Utils.Resolver getResolver()
{
- return _resolver;
+ return _resolver;
}
public Editable getEditable()
{
- return _editable;
+ return _editable;
}
Editable getEnclosingEditable()
{
- return _editable;
+ return _editable;
}
public boolean isEphemeral()
{
- return _ephemeral;
+ return _ephemeral;
}
private ServerDescriptor _descriptor;
diff --git a/java/src/IceGridGUI/Application/PlainServerEditor.java b/java/src/IceGridGUI/Application/PlainServerEditor.java
index d8bb19c4663..d2859d1339a 100755
--- a/java/src/IceGridGUI/Application/PlainServerEditor.java
+++ b/java/src/IceGridGUI/Application/PlainServerEditor.java
@@ -17,17 +17,17 @@ class PlainServerEditor extends AbstractServerEditor
{
protected void writeDescriptor()
{
- _subEditor.writeDescriptor();
- }
+ _subEditor.writeDescriptor();
+ }
protected boolean isSimpleUpdate()
{
- return _subEditor.isSimpleUpdate();
+ return _subEditor.isSimpleUpdate();
}
PlainServerEditor()
{
- _subEditor = new ServerSubEditor(this);
+ _subEditor = new ServerSubEditor(this);
}
//
@@ -35,41 +35,41 @@ class PlainServerEditor extends AbstractServerEditor
//
Utils.Resolver getDetailResolver()
{
- if(_target.getCoordinator().substitute())
- {
- return _target.getResolver();
- }
- else
- {
- return null;
- }
+ if(_target.getCoordinator().substitute())
+ {
+ return _target.getResolver();
+ }
+ else
+ {
+ return null;
+ }
}
protected void appendProperties(DefaultFormBuilder builder)
{
- _subEditor.appendProperties(builder);
+ _subEditor.appendProperties(builder);
}
Object getSubDescriptor()
{
- return _target.getDescriptor();
+ return _target.getDescriptor();
}
protected boolean validate()
{
- return _subEditor.validate();
+ return _subEditor.validate();
}
void show(PlainServer server)
{
- detectUpdates(false);
- _target = server;
+ detectUpdates(false);
+ _target = server;
- _subEditor.show(true);
+ _subEditor.show(true);
- _applyButton.setEnabled(server.isEphemeral());
- _discardButton.setEnabled(server.isEphemeral());
- detectUpdates(true);
+ _applyButton.setEnabled(server.isEphemeral());
+ _discardButton.setEnabled(server.isEphemeral());
+ detectUpdates(true);
}
private ServerSubEditor _subEditor;
diff --git a/java/src/IceGridGUI/Application/PlainService.java b/java/src/IceGridGUI/Application/PlainService.java
index 01743f7bc90..f21b554a79b 100755
--- a/java/src/IceGridGUI/Application/PlainService.java
+++ b/java/src/IceGridGUI/Application/PlainService.java
@@ -21,34 +21,34 @@ class PlainService extends Communicator implements Service, Cloneable
static public ServiceDescriptor
copyDescriptor(ServiceDescriptor sd)
{
- ServiceDescriptor copy = (ServiceDescriptor)sd.clone();
- copy.adapters = Adapter.copyDescriptors(copy.adapters);
- copy.dbEnvs = DbEnv.copyDescriptors(copy.dbEnvs);
- copy.propertySet = PropertySet.copyDescriptor(copy.propertySet);
- return copy;
+ ServiceDescriptor copy = (ServiceDescriptor)sd.clone();
+ copy.adapters = Adapter.copyDescriptors(copy.adapters);
+ copy.dbEnvs = DbEnv.copyDescriptors(copy.dbEnvs);
+ copy.propertySet = PropertySet.copyDescriptor(copy.propertySet);
+ return copy;
}
public Component getTreeCellRendererComponent(
- JTree tree,
- Object value,
- boolean sel,
- boolean expanded,
- boolean leaf,
- int row,
- boolean hasFocus)
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
{
- if(_cellRenderer == null)
- {
- _cellRenderer = new DefaultTreeCellRenderer();
- _cellRenderer.setOpenIcon(
- Utils.getIcon("/icons/16x16/service.png"));
-
- _cellRenderer.setClosedIcon(
- Utils.getIcon("/icons/16x16/service.png"));
- }
-
- return _cellRenderer.getTreeCellRendererComponent(
- tree, value, sel, expanded, leaf, row, hasFocus);
+ if(_cellRenderer == null)
+ {
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _cellRenderer.setOpenIcon(
+ Utils.getIcon("/icons/16x16/service.png"));
+
+ _cellRenderer.setClosedIcon(
+ Utils.getIcon("/icons/16x16/service.png"));
+ }
+
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
}
//
@@ -56,183 +56,183 @@ class PlainService extends Communicator implements Service, Cloneable
//
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
- actions[COPY] = !_ephemeral;
-
- Object clipboard = getCoordinator().getClipboard();
- if(clipboard != null &&
- (clipboard instanceof ServiceInstanceDescriptor
- || clipboard instanceof AdapterDescriptor
- || clipboard instanceof DbEnvDescriptor))
- {
- actions[PASTE] = true;
- }
-
- actions[DELETE] = true;
- actions[NEW_ADAPTER] = !_ephemeral;
- actions[NEW_DBENV] = !_ephemeral;
-
- if(_parent instanceof Server && !_ephemeral)
- {
- actions[SHOW_VARS] = true;
- actions[SUBSTITUTE_VARS] = true;
- }
-
- actions[MOVE_UP] = canMove(true);
- actions[MOVE_DOWN] = canMove(false);
- return actions;
+ boolean[] actions = new boolean[ACTION_COUNT];
+ actions[COPY] = !_ephemeral;
+
+ Object clipboard = getCoordinator().getClipboard();
+ if(clipboard != null &&
+ (clipboard instanceof ServiceInstanceDescriptor
+ || clipboard instanceof AdapterDescriptor
+ || clipboard instanceof DbEnvDescriptor))
+ {
+ actions[PASTE] = true;
+ }
+
+ actions[DELETE] = true;
+ actions[NEW_ADAPTER] = !_ephemeral;
+ actions[NEW_DBENV] = !_ephemeral;
+
+ if(_parent instanceof Server && !_ephemeral)
+ {
+ actions[SHOW_VARS] = true;
+ actions[SUBSTITUTE_VARS] = true;
+ }
+
+ actions[MOVE_UP] = canMove(true);
+ actions[MOVE_DOWN] = canMove(false);
+ return actions;
}
public JPopupMenu getPopupMenu()
{
- ApplicationActions actions = getCoordinator().getActionsForPopup();
- if(_popup == null)
- {
- _popup = new JPopupMenu();
- _popup.add(actions.get(NEW_ADAPTER));
- _popup.add(actions.get(NEW_DBENV));
- _popup.addSeparator();
- _popup.add(actions.get(MOVE_UP));
- _popup.add(actions.get(MOVE_DOWN));
- }
- actions.setTarget(this);
- return _popup;
+ ApplicationActions actions = getCoordinator().getActionsForPopup();
+ if(_popup == null)
+ {
+ _popup = new JPopupMenu();
+ _popup.add(actions.get(NEW_ADAPTER));
+ _popup.add(actions.get(NEW_DBENV));
+ _popup.addSeparator();
+ _popup.add(actions.get(MOVE_UP));
+ _popup.add(actions.get(MOVE_DOWN));
+ }
+ actions.setTarget(this);
+ return _popup;
}
public void copy()
{
- getCoordinator().setClipboard(ServiceInstance.copyDescriptor(_descriptor));
- getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
+ getCoordinator().setClipboard(ServiceInstance.copyDescriptor(_descriptor));
+ getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
}
public void moveUp()
{
- move(true);
+ move(true);
}
public void moveDown()
{
- move(false);
+ move(false);
}
public Object getDescriptor()
{
- return _descriptor;
+ return _descriptor;
}
public Object saveDescriptor()
{
- return _descriptor.clone();
+ return _descriptor.clone();
}
public void restoreDescriptor(Object savedDescriptor)
{
- ServiceInstanceDescriptor sid = (ServiceInstanceDescriptor)savedDescriptor;
+ ServiceInstanceDescriptor sid = (ServiceInstanceDescriptor)savedDescriptor;
- _descriptor.descriptor.propertySet = sid.descriptor.propertySet;
- _descriptor.descriptor.description = sid.descriptor.description;
- _descriptor.descriptor.name = sid.descriptor.name;
- _descriptor.descriptor.entry = sid.descriptor.entry;
+ _descriptor.descriptor.propertySet = sid.descriptor.propertySet;
+ _descriptor.descriptor.description = sid.descriptor.description;
+ _descriptor.descriptor.name = sid.descriptor.name;
+ _descriptor.descriptor.entry = sid.descriptor.entry;
}
public void destroy()
{
- ((Communicator)_parent).getServices().destroyChild(this);
+ ((Communicator)_parent).getServices().destroyChild(this);
}
public Editor getEditor()
{
- if(_editor == null)
- {
- _editor = (PlainServiceEditor)getRoot().getEditor(PlainServiceEditor.class, this);
- }
- _editor.show(this);
- return _editor;
+ if(_editor == null)
+ {
+ _editor = (PlainServiceEditor)getRoot().getEditor(PlainServiceEditor.class, this);
+ }
+ _editor.show(this);
+ return _editor;
}
protected Editor createEditor()
{
- return new PlainServiceEditor();
+ return new PlainServiceEditor();
}
Editable getEnclosingEditable()
{
- return ((Communicator)_parent).getEnclosingEditable();
+ return ((Communicator)_parent).getEnclosingEditable();
}
private boolean canMove(boolean up)
{
- if(_ephemeral)
- {
- return false;
- }
- else
- {
- return ((Communicator)_parent).getServices().canMove(this, up);
- }
+ if(_ephemeral)
+ {
+ return false;
+ }
+ else
+ {
+ return ((Communicator)_parent).getServices().canMove(this, up);
+ }
}
private void move(boolean up)
{
- assert canMove(up);
- ((Communicator)_parent).getServices().move(this, up);
+ assert canMove(up);
+ ((Communicator)_parent).getServices().move(this, up);
}
public Object rebuild(java.util.List editables)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- Communicator communicator = (Communicator)_parent;
- Services services = communicator.getServices();
- PlainService newService = null;
-
- newService = (PlainService)services.createChild(_descriptor);
-
- Object backup = null;
-
- try
- {
- backup = (PlainService)clone();
- }
- catch(CloneNotSupportedException e)
- {
- assert false;
- }
-
- reset(newService);
- getRoot().getTreeModel().nodeChanged(this);
- return backup;
+ Communicator communicator = (Communicator)_parent;
+ Services services = communicator.getServices();
+ PlainService newService = null;
+
+ newService = (PlainService)services.createChild(_descriptor);
+
+ Object backup = null;
+
+ try
+ {
+ backup = (PlainService)clone();
+ }
+ catch(CloneNotSupportedException e)
+ {
+ assert false;
+ }
+
+ reset(newService);
+ getRoot().getTreeModel().nodeChanged(this);
+ return backup;
}
public void restore(Object backupObj)
{
- reset((PlainService)backupObj);
- getRoot().getTreeModel().nodeChanged(this);
+ reset((PlainService)backupObj);
+ getRoot().getTreeModel().nodeChanged(this);
}
private void reset(PlainService from)
{
- _id = from._id;
- assert _parent == from._parent;
-
- _adapters = from._adapters;
- _dbEnvs = from._dbEnvs;
- _services = from._services;
- _childListArray = from._childListArray;
-
- _descriptor = from._descriptor;
- _resolver = from._resolver;
+ _id = from._id;
+ assert _parent == from._parent;
+
+ _adapters = from._adapters;
+ _dbEnvs = from._dbEnvs;
+ _services = from._services;
+ _childListArray = from._childListArray;
+
+ _descriptor = from._descriptor;
+ _resolver = from._resolver;
}
PlainService(Communicator parent,
- String name,
- ServiceInstanceDescriptor descriptor,
- Utils.Resolver resolver)
- throws UpdateFailedException
+ String name,
+ ServiceInstanceDescriptor descriptor,
+ Utils.Resolver resolver)
+ throws UpdateFailedException
{
- super(parent, name);
- _descriptor = descriptor;
- _ephemeral = false;
- _resolver = resolver;
+ super(parent, name);
+ _descriptor = descriptor;
+ _ephemeral = false;
+ _resolver = resolver;
- _adapters.init(_descriptor.descriptor.adapters);
- _dbEnvs.init(_descriptor.descriptor.dbEnvs);
+ _adapters.init(_descriptor.descriptor.adapters);
+ _dbEnvs.init(_descriptor.descriptor.dbEnvs);
}
//
@@ -240,53 +240,53 @@ class PlainService extends Communicator implements Service, Cloneable
//
PlainService(Communicator parent, ServiceInstanceDescriptor descriptor)
{
- super(parent, descriptor.descriptor.name);
- _descriptor = descriptor;
- _ephemeral = true;
+ super(parent, descriptor.descriptor.name);
+ _descriptor = descriptor;
+ _ephemeral = true;
}
static java.util.List createAttributes(ServiceDescriptor descriptor)
{
- java.util.List attributes = new java.util.LinkedList();
- attributes.add(createAttribute("name", descriptor.name));
- attributes.add(createAttribute("entry", descriptor.entry));
- return attributes;
+ java.util.List attributes = new java.util.LinkedList();
+ attributes.add(createAttribute("name", descriptor.name));
+ attributes.add(createAttribute("entry", descriptor.entry));
+ return attributes;
}
void write(XMLWriter writer) throws java.io.IOException
{
- if(!_ephemeral)
- {
- writer.writeStartTag("service", createAttributes(_descriptor.descriptor));
-
- if(_descriptor.descriptor.description.length() > 0)
- {
- writer.writeElement("description", _descriptor.descriptor.description);
- }
-
- writePropertySet(writer, _descriptor.descriptor.propertySet,
- _descriptor.descriptor.adapters, _descriptor.descriptor.logs);
- writeLogs(writer, _descriptor.descriptor.logs, _descriptor.descriptor.propertySet.properties);
-
- _adapters.write(writer, _descriptor.descriptor.propertySet.properties);
- _dbEnvs.write(writer);
- writer.writeEndTag("service");
- }
+ if(!_ephemeral)
+ {
+ writer.writeStartTag("service", createAttributes(_descriptor.descriptor));
+
+ if(_descriptor.descriptor.description.length() > 0)
+ {
+ writer.writeElement("description", _descriptor.descriptor.description);
+ }
+
+ writePropertySet(writer, _descriptor.descriptor.propertySet,
+ _descriptor.descriptor.adapters, _descriptor.descriptor.logs);
+ writeLogs(writer, _descriptor.descriptor.logs, _descriptor.descriptor.propertySet.properties);
+
+ _adapters.write(writer, _descriptor.descriptor.propertySet.properties);
+ _dbEnvs.write(writer);
+ writer.writeEndTag("service");
+ }
}
CommunicatorDescriptor getCommunicatorDescriptor()
{
- return _descriptor.descriptor;
+ return _descriptor.descriptor;
}
Utils.Resolver getResolver()
{
- return _resolver;
+ return _resolver;
}
public boolean isEphemeral()
{
- return _ephemeral;
+ return _ephemeral;
}
private ServiceInstanceDescriptor _descriptor;
diff --git a/java/src/IceGridGUI/Application/PlainServiceEditor.java b/java/src/IceGridGUI/Application/PlainServiceEditor.java
index c1de8d137e2..f2487413ba8 100755
--- a/java/src/IceGridGUI/Application/PlainServiceEditor.java
+++ b/java/src/IceGridGUI/Application/PlainServiceEditor.java
@@ -17,7 +17,7 @@ class PlainServiceEditor extends CommunicatorChildEditor
{
PlainServiceEditor()
{
- _subEditor = new ServiceSubEditor(this);
+ _subEditor = new ServiceSubEditor(this);
}
//
@@ -25,65 +25,65 @@ class PlainServiceEditor extends CommunicatorChildEditor
//
Utils.Resolver getDetailResolver()
{
- PlainService service = (PlainService)_target;
- if(service.getCoordinator().substitute())
- {
- return service.getResolver();
- }
- else
- {
- return null;
- }
+ PlainService service = (PlainService)_target;
+ if(service.getCoordinator().substitute())
+ {
+ return service.getResolver();
+ }
+ else
+ {
+ return null;
+ }
}
protected void appendProperties(DefaultFormBuilder builder)
{
- _subEditor.appendProperties(builder);
+ _subEditor.appendProperties(builder);
}
protected void buildPropertiesPanel()
{
- super.buildPropertiesPanel();
- _propertiesPanel.setName("Service Properties");
+ super.buildPropertiesPanel();
+ _propertiesPanel.setName("Service Properties");
}
protected boolean validate()
{
- return _subEditor.validate();
+ return _subEditor.validate();
}
void writeDescriptor()
{
- _subEditor.writeDescriptor();
- }
+ _subEditor.writeDescriptor();
+ }
boolean isSimpleUpdate()
{
- return _subEditor.isSimpleUpdate();
+ return _subEditor.isSimpleUpdate();
}
Communicator.ChildList getChildList()
{
- return ((Communicator)_target.getParent()).getServices();
+ return ((Communicator)_target.getParent()).getServices();
}
Object getSubDescriptor()
{
- ServiceInstanceDescriptor sid = (ServiceInstanceDescriptor)_target.getDescriptor();
- return sid.descriptor;
+ ServiceInstanceDescriptor sid = (ServiceInstanceDescriptor)_target.getDescriptor();
+ return sid.descriptor;
}
void show(PlainService service)
{
- detectUpdates(false);
- _target = service;
+ detectUpdates(false);
+ _target = service;
- _subEditor.show(true);
+ _subEditor.show(true);
- _applyButton.setEnabled(service.isEphemeral());
- _discardButton.setEnabled(service.isEphemeral());
- detectUpdates(true);
+ _applyButton.setEnabled(service.isEphemeral());
+ _discardButton.setEnabled(service.isEphemeral());
+ detectUpdates(true);
}
private ServiceSubEditor _subEditor;
diff --git a/java/src/IceGridGUI/Application/PropertiesField.java b/java/src/IceGridGUI/Application/PropertiesField.java
index e94ca2fda66..ed2035f56c9 100755
--- a/java/src/IceGridGUI/Application/PropertiesField.java
+++ b/java/src/IceGridGUI/Application/PropertiesField.java
@@ -33,231 +33,231 @@ public class PropertiesField extends JTable
{
public PropertiesField(Editor editor)
{
- _columnNames = new java.util.Vector(2);
- _columnNames.add("Name");
- _columnNames.add("Value");
-
- _editor = editor;
-
- Action deleteRow = new AbstractAction("Delete selected row(s)")
- {
- public void actionPerformed(ActionEvent e)
- {
- if(_editable)
- {
- if(isEditing())
- {
- getCellEditor().stopCellEditing();
- }
-
- for(;;)
- {
- int selectedRow = getSelectedRow();
- if(selectedRow == -1)
- {
- break;
- }
- else
- {
- _model.removeRow(selectedRow);
- }
- }
- }
- }
- };
- getActionMap().put("delete", deleteRow);
- getInputMap().put(
- KeyStroke.getKeyStroke("DELETE"), "delete");
-
-
-
+ _columnNames = new java.util.Vector(2);
+ _columnNames.add("Name");
+ _columnNames.add("Value");
+
+ _editor = editor;
+
+ Action deleteRow = new AbstractAction("Delete selected row(s)")
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ if(_editable)
+ {
+ if(isEditing())
+ {
+ getCellEditor().stopCellEditing();
+ }
+
+ for(;;)
+ {
+ int selectedRow = getSelectedRow();
+ if(selectedRow == -1)
+ {
+ break;
+ }
+ else
+ {
+ _model.removeRow(selectedRow);
+ }
+ }
+ }
+ }
+ };
+ getActionMap().put("delete", deleteRow);
+ getInputMap().put(
+ KeyStroke.getKeyStroke("DELETE"), "delete");
+
+
+
}
public void setProperties(java.util.List properties,
- java.util.List adapters,
- String[] logs,
- Utils.Resolver resolver, boolean editable)
+ java.util.List adapters,
+ String[] logs,
+ Utils.Resolver resolver, boolean editable)
{
- _editable = editable;
-
- //
- // We don't show the .Endpoint and .PublishedEndpoints of adapters,
- // since they already appear in the Adapter pages
- //
- java.util.Set hiddenPropertyNames = new java.util.HashSet();
-
- //
- // We also hide properties whose value match an object or allocatable
- //
- java.util.Set hiddenPropertyValues = new java.util.HashSet();
-
- _hiddenProperties.clear();
-
- if(adapters != null)
- {
- //
- // Note that we don't substitute *on purpose*, i.e. the names or values
- // must match before substitution.
- //
- java.util.Iterator p = adapters.iterator();
- while(p.hasNext())
- {
- AdapterDescriptor ad = (AdapterDescriptor)p.next();
- hiddenPropertyNames.add("Ice.OA." + ad.name + ".Endpoints");
- hiddenPropertyNames.add("Ice.OA." + ad.name + ".PublishedEndpoints");
-
- java.util.Iterator q = ad.objects.iterator();
- while(q.hasNext())
- {
- ObjectDescriptor od = (ObjectDescriptor)q.next();
- hiddenPropertyValues.add(Ice.Util.identityToString(od.id));
- }
- q = ad.allocatables.iterator();
- while(q.hasNext())
- {
- ObjectDescriptor od = (ObjectDescriptor)q.next();
- hiddenPropertyValues.add(Ice.Util.identityToString(od.id));
- }
- }
- }
-
- if(logs != null)
- {
- for(int i = 0; i < logs.length; ++i)
- {
- hiddenPropertyValues.add(logs[i]);
- }
- }
-
- //
- // Transform list into vector of vectors
- //
- java.util.Vector vector = new java.util.Vector(properties.size());
- java.util.Iterator p = properties.iterator();
- while(p.hasNext())
- {
- PropertyDescriptor pd = (PropertyDescriptor)p.next();
- if(hiddenPropertyNames.contains(pd.name))
- {
- //
- // We keep them at the top of the list
- //
- if(_editable)
- {
- _hiddenProperties.add(pd);
- }
-
- //
- // We hide only the first occurence
- //
- hiddenPropertyNames.remove(pd.name);
- }
- else if(hiddenPropertyValues.contains(pd.value))
- {
- //
- // We keep them at the top of the list
- //
- if(_editable)
- {
- _hiddenProperties.add(pd);
- }
-
- //
- // We hide only the first occurence
- //
- hiddenPropertyValues.remove(pd.value);
- }
- else
- {
- java.util.Vector row = new java.util.Vector(2);
- row.add(Utils.substitute(pd.name, resolver));
- row.add(Utils.substitute(pd.value, resolver));
- vector.add(row);
- }
- }
-
- if(_editable)
- {
- java.util.Vector newRow = new java.util.Vector(2);
- newRow.add("");
- newRow.add("");
- vector.add(newRow);
- }
-
- _model = new DefaultTableModel(vector, _columnNames)
- {
- public boolean isCellEditable(int row, int column)
- {
- return _editable;
- }
- };
-
- _model.addTableModelListener(new TableModelListener()
- {
- public void tableChanged(TableModelEvent e)
- {
- if(_editable)
- {
- Object lastKey = _model.getValueAt(
- _model.getRowCount() - 1 , 0);
- if(lastKey != null && !lastKey.equals(""))
- {
- _model.addRow(new Object[]{"", ""});
- }
- _editor.updated();
- }
- }
- });
- setModel(_model);
-
- setCellSelectionEnabled(_editable);
- setOpaque(_editable);
- setPreferredScrollableViewportSize(getPreferredSize());
-
- DefaultTableCellRenderer cr = (DefaultTableCellRenderer)
- getDefaultRenderer(String.class);
- cr.setOpaque(_editable);
+ _editable = editable;
+
+ //
+ // We don't show the .Endpoint and .PublishedEndpoints of adapters,
+ // since they already appear in the Adapter pages
+ //
+ java.util.Set hiddenPropertyNames = new java.util.HashSet();
+
+ //
+ // We also hide properties whose value match an object or allocatable
+ //
+ java.util.Set hiddenPropertyValues = new java.util.HashSet();
+
+ _hiddenProperties.clear();
+
+ if(adapters != null)
+ {
+ //
+ // Note that we don't substitute *on purpose*, i.e. the names or values
+ // must match before substitution.
+ //
+ java.util.Iterator p = adapters.iterator();
+ while(p.hasNext())
+ {
+ AdapterDescriptor ad = (AdapterDescriptor)p.next();
+ hiddenPropertyNames.add("Ice.OA." + ad.name + ".Endpoints");
+ hiddenPropertyNames.add("Ice.OA." + ad.name + ".PublishedEndpoints");
+
+ java.util.Iterator q = ad.objects.iterator();
+ while(q.hasNext())
+ {
+ ObjectDescriptor od = (ObjectDescriptor)q.next();
+ hiddenPropertyValues.add(Ice.Util.identityToString(od.id));
+ }
+ q = ad.allocatables.iterator();
+ while(q.hasNext())
+ {
+ ObjectDescriptor od = (ObjectDescriptor)q.next();
+ hiddenPropertyValues.add(Ice.Util.identityToString(od.id));
+ }
+ }
+ }
+
+ if(logs != null)
+ {
+ for(int i = 0; i < logs.length; ++i)
+ {
+ hiddenPropertyValues.add(logs[i]);
+ }
+ }
+
+ //
+ // Transform list into vector of vectors
+ //
+ java.util.Vector vector = new java.util.Vector(properties.size());
+ java.util.Iterator p = properties.iterator();
+ while(p.hasNext())
+ {
+ PropertyDescriptor pd = (PropertyDescriptor)p.next();
+ if(hiddenPropertyNames.contains(pd.name))
+ {
+ //
+ // We keep them at the top of the list
+ //
+ if(_editable)
+ {
+ _hiddenProperties.add(pd);
+ }
+
+ //
+ // We hide only the first occurence
+ //
+ hiddenPropertyNames.remove(pd.name);
+ }
+ else if(hiddenPropertyValues.contains(pd.value))
+ {
+ //
+ // We keep them at the top of the list
+ //
+ if(_editable)
+ {
+ _hiddenProperties.add(pd);
+ }
+
+ //
+ // We hide only the first occurence
+ //
+ hiddenPropertyValues.remove(pd.value);
+ }
+ else
+ {
+ java.util.Vector row = new java.util.Vector(2);
+ row.add(Utils.substitute(pd.name, resolver));
+ row.add(Utils.substitute(pd.value, resolver));
+ vector.add(row);
+ }
+ }
+
+ if(_editable)
+ {
+ java.util.Vector newRow = new java.util.Vector(2);
+ newRow.add("");
+ newRow.add("");
+ vector.add(newRow);
+ }
+
+ _model = new DefaultTableModel(vector, _columnNames)
+ {
+ public boolean isCellEditable(int row, int column)
+ {
+ return _editable;
+ }
+ };
+
+ _model.addTableModelListener(new TableModelListener()
+ {
+ public void tableChanged(TableModelEvent e)
+ {
+ if(_editable)
+ {
+ Object lastKey = _model.getValueAt(
+ _model.getRowCount() - 1 , 0);
+ if(lastKey != null && !lastKey.equals(""))
+ {
+ _model.addRow(new Object[]{"", ""});
+ }
+ _editor.updated();
+ }
+ }
+ });
+ setModel(_model);
+
+ setCellSelectionEnabled(_editable);
+ setOpaque(_editable);
+ setPreferredScrollableViewportSize(getPreferredSize());
+
+ DefaultTableCellRenderer cr = (DefaultTableCellRenderer)
+ getDefaultRenderer(String.class);
+ cr.setOpaque(_editable);
}
public java.util.LinkedList getProperties()
{
- assert _editable;
-
- if(isEditing())
- {
- getCellEditor().stopCellEditing();
- }
- java.util.Vector vector = _model.getDataVector();
-
- java.util.LinkedList result = new java.util.LinkedList(_hiddenProperties);
-
- java.util.Iterator p = vector.iterator();
- while(p.hasNext())
- {
- java.util.Vector row = (java.util.Vector)p.next();
-
- //
- // Eliminate rows with null or empty keys
- //
- String key = (String)row.elementAt(0);
- if(key != null)
- {
- key = key.trim();
- if(!key.equals(""))
- {
- String val = (String) row.elementAt(1);
- if(val == null)
- {
- val = "";
- }
-
- result.add(new PropertyDescriptor(key, val));
- }
- }
- }
- return result;
+ assert _editable;
+
+ if(isEditing())
+ {
+ getCellEditor().stopCellEditing();
+ }
+ java.util.Vector vector = _model.getDataVector();
+
+ java.util.LinkedList result = new java.util.LinkedList(_hiddenProperties);
+
+ java.util.Iterator p = vector.iterator();
+ while(p.hasNext())
+ {
+ java.util.Vector row = (java.util.Vector)p.next();
+
+ //
+ // Eliminate rows with null or empty keys
+ //
+ String key = (String)row.elementAt(0);
+ if(key != null)
+ {
+ key = key.trim();
+ if(!key.equals(""))
+ {
+ String val = (String) row.elementAt(1);
+ if(val == null)
+ {
+ val = "";
+ }
+
+ result.add(new PropertyDescriptor(key, val));
+ }
+ }
+ }
+ return result;
}
private DefaultTableModel _model;
diff --git a/java/src/IceGridGUI/Application/PropertySet.java b/java/src/IceGridGUI/Application/PropertySet.java
index 745bc163aa3..8027977ef02 100755
--- a/java/src/IceGridGUI/Application/PropertySet.java
+++ b/java/src/IceGridGUI/Application/PropertySet.java
@@ -20,29 +20,29 @@ class PropertySet extends TreeNode
static public PropertySetDescriptor
copyDescriptor(PropertySetDescriptor d)
{
- PropertySetDescriptor psd = (PropertySetDescriptor)d.clone();
- psd.properties = new java.util.LinkedList(psd.properties);
- return psd;
+ PropertySetDescriptor psd = (PropertySetDescriptor)d.clone();
+ psd.properties = new java.util.LinkedList(psd.properties);
+ return psd;
}
public Component getTreeCellRendererComponent(
- JTree tree,
- Object value,
- boolean sel,
- boolean expanded,
- boolean leaf,
- int row,
- boolean hasFocus)
- {
- if(_cellRenderer == null)
- {
- _cellRenderer = new DefaultTreeCellRenderer();
- _cellRenderer.setLeafIcon(
- Utils.getIcon("/icons/16x16/property_set.png"));
- }
-
- return _cellRenderer.getTreeCellRendererComponent(
- tree, value, sel, expanded, leaf, row, hasFocus);
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
+ {
+ if(_cellRenderer == null)
+ {
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _cellRenderer.setLeafIcon(
+ Utils.getIcon("/icons/16x16/property_set.png"));
+ }
+
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
}
//
@@ -50,182 +50,182 @@ class PropertySet extends TreeNode
//
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
- actions[COPY] = !_ephemeral;
-
- if(((TreeNode)_parent).getAvailableActions()[PASTE])
- {
- actions[PASTE] = true;
- }
- actions[DELETE] = true;
+ boolean[] actions = new boolean[ACTION_COUNT];
+ actions[COPY] = !_ephemeral;
+
+ if(((TreeNode)_parent).getAvailableActions()[PASTE])
+ {
+ actions[PASTE] = true;
+ }
+ actions[DELETE] = true;
- if(!_ephemeral)
- {
- actions[SHOW_VARS] = true;
- actions[SUBSTITUTE_VARS] = true;
- }
- return actions;
+ if(!_ephemeral)
+ {
+ actions[SHOW_VARS] = true;
+ actions[SUBSTITUTE_VARS] = true;
+ }
+ return actions;
}
public void copy()
{
- getCoordinator().setClipboard(copyDescriptor(_descriptor));
- getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
+ getCoordinator().setClipboard(copyDescriptor(_descriptor));
+ getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
}
public void paste()
{
- ((TreeNode)_parent).paste();
+ ((TreeNode)_parent).paste();
}
public void destroy()
{
- PropertySetParent parent = (PropertySetParent)_parent;
- parent.removePropertySet(this);
+ PropertySetParent parent = (PropertySetParent)_parent;
+ parent.removePropertySet(this);
- if(!_ephemeral)
- {
- parent.removeDescriptor(_unsubstitutedId);
- if(_editable != null)
- {
- parent.getEditable().removeElement(_unsubstitutedId, _editable, PropertySet.class);
- }
- else
- {
- parent.getEditable().markModified();
- }
- getRoot().updated();
- }
+ if(!_ephemeral)
+ {
+ parent.removeDescriptor(_unsubstitutedId);
+ if(_editable != null)
+ {
+ parent.getEditable().removeElement(_unsubstitutedId, _editable, PropertySet.class);
+ }
+ else
+ {
+ parent.getEditable().markModified();
+ }
+ getRoot().updated();
+ }
}
public Editor getEditor()
{
- if(_editor == null)
- {
- if(_inServerInstance)
- {
- _editor = (PropertySetEditor)getRoot().
- getEditor(ServerInstancePropertySetEditor.class, this);
- }
- else
- {
- _editor = (PropertySetEditor)getRoot().
- getEditor(PropertySetEditor.class, this);
- }
- }
- _editor.show(_unsubstitutedId, this);
- return _editor;
+ if(_editor == null)
+ {
+ if(_inServerInstance)
+ {
+ _editor = (PropertySetEditor)getRoot().
+ getEditor(ServerInstancePropertySetEditor.class, this);
+ }
+ else
+ {
+ _editor = (PropertySetEditor)getRoot().
+ getEditor(PropertySetEditor.class, this);
+ }
+ }
+ _editor.show(_unsubstitutedId, this);
+ return _editor;
}
protected Editor createEditor()
{
- if(_inServerInstance)
- {
- return new ServerInstancePropertySetEditor();
- }
- else
- {
- return new PropertySetEditor();
- }
+ if(_inServerInstance)
+ {
+ return new ServerInstancePropertySetEditor();
+ }
+ else
+ {
+ return new PropertySetEditor();
+ }
}
public boolean isEphemeral()
{
- return _ephemeral;
+ return _ephemeral;
}
public String unsubstitutedId()
{
- return _unsubstitutedId;
+ return _unsubstitutedId;
}
Object getDescriptor()
{
- return _descriptor;
+ return _descriptor;
}
Object saveDescriptor()
{
- return _descriptor.clone();
+ return _descriptor.clone();
}
void restoreDescriptor(Object savedDescriptor)
{
- PropertySetDescriptor clone = (PropertySetDescriptor)savedDescriptor;
- _descriptor.references = clone.references;
- _descriptor.properties = clone.properties;
+ PropertySetDescriptor clone = (PropertySetDescriptor)savedDescriptor;
+ _descriptor.references = clone.references;
+ _descriptor.properties = clone.properties;
}
void commit()
{
- if(_editable != null)
- {
- _editable.commit();
- }
+ if(_editable != null)
+ {
+ _editable.commit();
+ }
}
Editable getEditable()
{
- if(_editable != null)
- {
- return _editable;
- }
- else
- {
- return ((PropertySetParent)_parent).getEditable();
- }
+ if(_editable != null)
+ {
+ return _editable;
+ }
+ else
+ {
+ return ((PropertySetParent)_parent).getEditable();
+ }
}
PropertySet(boolean brandNew,
- TreeNode parent,
- String id,
- String unsubstitutedId,
- PropertySetDescriptor descriptor)
+ TreeNode parent,
+ String id,
+ String unsubstitutedId,
+ PropertySetDescriptor descriptor)
{
- super(parent, id);
- _unsubstitutedId = unsubstitutedId;
- _inServerInstance = (parent instanceof ServerInstance);
- _ephemeral = false;
- _editable = new Editable(brandNew);
- rebuild(descriptor);
+ super(parent, id);
+ _unsubstitutedId = unsubstitutedId;
+ _inServerInstance = (parent instanceof ServerInstance);
+ _ephemeral = false;
+ _editable = new Editable(brandNew);
+ rebuild(descriptor);
}
PropertySet(TreeNode parent,
- String id,
- String unsubstitutedId,
- PropertySetDescriptor descriptor)
+ String id,
+ String unsubstitutedId,
+ PropertySetDescriptor descriptor)
{
- super(parent, id);
- _unsubstitutedId = unsubstitutedId;
- _inServerInstance = (parent instanceof ServerInstance);
- _ephemeral = false;
- _editable = null;
- rebuild(descriptor);
+ super(parent, id);
+ _unsubstitutedId = unsubstitutedId;
+ _inServerInstance = (parent instanceof ServerInstance);
+ _ephemeral = false;
+ _editable = null;
+ rebuild(descriptor);
}
PropertySet(TreeNode parent, String id, PropertySetDescriptor descriptor)
{
- super(parent, id);
- _unsubstitutedId = id;
- _inServerInstance = (parent instanceof ServerInstance);
- _ephemeral = true;
- _editable = null;
- rebuild(descriptor);
+ super(parent, id);
+ _unsubstitutedId = id;
+ _inServerInstance = (parent instanceof ServerInstance);
+ _ephemeral = true;
+ _editable = null;
+ rebuild(descriptor);
}
void write(XMLWriter writer) throws java.io.IOException
{
- if(!_ephemeral)
- {
- writePropertySet(writer, _unsubstitutedId,
- _inServerInstance ? "service" : "id",
- _descriptor, null, null);
- }
+ if(!_ephemeral)
+ {
+ writePropertySet(writer, _unsubstitutedId,
+ _inServerInstance ? "service" : "id",
+ _descriptor, null, null);
+ }
}
void rebuild(PropertySetDescriptor descriptor)
{
- _descriptor = descriptor;
+ _descriptor = descriptor;
}
private PropertySetDescriptor _descriptor;
diff --git a/java/src/IceGridGUI/Application/PropertySetEditor.java b/java/src/IceGridGUI/Application/PropertySetEditor.java
index dae73a2ab60..bad0ca590d2 100755
--- a/java/src/IceGridGUI/Application/PropertySetEditor.java
+++ b/java/src/IceGridGUI/Application/PropertySetEditor.java
@@ -34,240 +34,240 @@ class PropertySetEditor extends Editor
{
protected boolean applyUpdate(boolean refresh)
{
- PropertySet nps = (PropertySet)_target;
- Root root = nps.getRoot();
-
- root.disableSelectionListener();
- try
- {
- PropertySetParent parent = (PropertySetParent)nps.getParent();
- if(nps.isEphemeral())
- {
- writeDescriptor();
- PropertySetDescriptor descriptor =
- (PropertySetDescriptor)nps.getDescriptor();
- nps.destroy(); // just removes the child
-
- try
- {
- parent.tryAdd(getIdText(), descriptor);
- }
- catch(UpdateFailedException e)
- {
- //
- // Add back ephemeral child
- //
- try
- {
- parent.insertPropertySet(nps, true);
- }
- catch(UpdateFailedException die)
- {
- assert false;
- }
- root.setSelectedNode(_target);
-
- JOptionPane.showMessageDialog(
- root.getCoordinator().getMainFrame(),
- e.toString(),
- "Apply failed",
- JOptionPane.ERROR_MESSAGE);
- return false;
- }
-
- //
- // Success
- //
- _target = ((TreeNode)parent).findChildWithDescriptor(descriptor);
- root.updated();
- if(refresh)
- {
- root.setSelectedNode(_target);
- }
- }
- else if(!isSimpleUpdate())
- {
- PropertySetDescriptor descriptor =
- (PropertySetDescriptor)nps.getDescriptor();
-
- try
- {
- parent.tryRename(_target.getId(), _oldId, getIdText());
- }
- catch(UpdateFailedException e)
- {
- JOptionPane.showMessageDialog(
- root.getCoordinator().getMainFrame(),
- e.toString(),
- "Apply failed",
- JOptionPane.ERROR_MESSAGE);
- return false;
- }
-
- //
- // Success
- //
- _target = ((TreeNode)parent).findChildWithDescriptor(descriptor);
- writeDescriptor();
- root.updated();
- if(refresh)
- {
- root.setSelectedNode(_target);
- }
- }
- else
- {
- writeDescriptor();
- root.updated();
- nps.getEditable().markModified();
- }
-
- if(refresh)
- {
- root.getCoordinator().getCurrentTab().showNode(_target);
- }
- _applyButton.setEnabled(false);
- _discardButton.setEnabled(false);
- return true;
- }
- finally
- {
- root.enableSelectionListener();
- }
+ PropertySet nps = (PropertySet)_target;
+ Root root = nps.getRoot();
+
+ root.disableSelectionListener();
+ try
+ {
+ PropertySetParent parent = (PropertySetParent)nps.getParent();
+ if(nps.isEphemeral())
+ {
+ writeDescriptor();
+ PropertySetDescriptor descriptor =
+ (PropertySetDescriptor)nps.getDescriptor();
+ nps.destroy(); // just removes the child
+
+ try
+ {
+ parent.tryAdd(getIdText(), descriptor);
+ }
+ catch(UpdateFailedException e)
+ {
+ //
+ // Add back ephemeral child
+ //
+ try
+ {
+ parent.insertPropertySet(nps, true);
+ }
+ catch(UpdateFailedException die)
+ {
+ assert false;
+ }
+ root.setSelectedNode(_target);
+
+ JOptionPane.showMessageDialog(
+ root.getCoordinator().getMainFrame(),
+ e.toString(),
+ "Apply failed",
+ JOptionPane.ERROR_MESSAGE);
+ return false;
+ }
+
+ //
+ // Success
+ //
+ _target = ((TreeNode)parent).findChildWithDescriptor(descriptor);
+ root.updated();
+ if(refresh)
+ {
+ root.setSelectedNode(_target);
+ }
+ }
+ else if(!isSimpleUpdate())
+ {
+ PropertySetDescriptor descriptor =
+ (PropertySetDescriptor)nps.getDescriptor();
+
+ try
+ {
+ parent.tryRename(_target.getId(), _oldId, getIdText());
+ }
+ catch(UpdateFailedException e)
+ {
+ JOptionPane.showMessageDialog(
+ root.getCoordinator().getMainFrame(),
+ e.toString(),
+ "Apply failed",
+ JOptionPane.ERROR_MESSAGE);
+ return false;
+ }
+
+ //
+ // Success
+ //
+ _target = ((TreeNode)parent).findChildWithDescriptor(descriptor);
+ writeDescriptor();
+ root.updated();
+ if(refresh)
+ {
+ root.setSelectedNode(_target);
+ }
+ }
+ else
+ {
+ writeDescriptor();
+ root.updated();
+ nps.getEditable().markModified();
+ }
+
+ if(refresh)
+ {
+ root.getCoordinator().getCurrentTab().showNode(_target);
+ }
+ _applyButton.setEnabled(false);
+ _discardButton.setEnabled(false);
+ return true;
+ }
+ finally
+ {
+ root.enableSelectionListener();
+ }
}
Utils.Resolver getDetailResolver()
{
- Root root = _target.getRoot();
-
- if(root.getCoordinator().substitute())
- {
- return _target.getResolver();
- }
- else
- {
- return null;
- }
+ Root root = _target.getRoot();
+
+ if(root.getCoordinator().substitute())
+ {
+ return _target.getResolver();
+ }
+ else
+ {
+ return null;
+ }
}
PropertySetEditor()
{
- this("ID");
- _id.setToolTipText("The id of this Property Set");
- _id.getDocument().addDocumentListener(_updateListener);
+ this("ID");
+ _id.setToolTipText("The id of this Property Set");
+ _id.getDocument().addDocumentListener(_updateListener);
}
protected PropertySetEditor(String label)
{
- _idLabel = new JLabel(label);
+ _idLabel = new JLabel(label);
- _propertySets.getDocument().addDocumentListener(_updateListener);
- _propertySets.setToolTipText("Property Set References");
- _properties = new PropertiesField(this);
+ _propertySets.getDocument().addDocumentListener(_updateListener);
+ _propertySets.setToolTipText("Property Set References");
+ _properties = new PropertiesField(this);
}
void writeDescriptor()
{
- PropertySetDescriptor descriptor =
- (PropertySetDescriptor)getPropertySet().getDescriptor();
+ PropertySetDescriptor descriptor =
+ (PropertySetDescriptor)getPropertySet().getDescriptor();
- descriptor.references =
- (String[])_propertySets.getList().toArray(new String[0]);
- descriptor.properties = _properties.getProperties();
- }
+ descriptor.references =
+ (String[])_propertySets.getList().toArray(new String[0]);
+ descriptor.properties = _properties.getProperties();
+ }
boolean isSimpleUpdate()
{
- return getIdText().equals(_oldId);
+ return getIdText().equals(_oldId);
}
protected void appendProperties(DefaultFormBuilder builder)
{
- builder.append(_idLabel);
- builder.append(getIdComponent(), 3);
- builder.nextLine();
-
- builder.append("Property Sets");
- builder.append(_propertySets, 3);
- builder.nextLine();
-
- builder.append("Properties");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
-
- builder.nextRow(-6);
- JScrollPane scrollPane = new JScrollPane(_properties);
- CellConstraints cc = new CellConstraints();
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
- builder.nextRow(6);
- builder.nextLine();
+ builder.append(_idLabel);
+ builder.append(getIdComponent(), 3);
+ builder.nextLine();
+
+ builder.append("Property Sets");
+ builder.append(_propertySets, 3);
+ builder.nextLine();
+
+ builder.append("Properties");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+
+ builder.nextRow(-6);
+ JScrollPane scrollPane = new JScrollPane(_properties);
+ CellConstraints cc = new CellConstraints();
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
+ builder.nextRow(6);
+ builder.nextLine();
}
protected void buildPropertiesPanel()
{
- super.buildPropertiesPanel();
- _propertiesPanel.setName("Named Property Set");
+ super.buildPropertiesPanel();
+ _propertiesPanel.setName("Named Property Set");
}
protected boolean validate()
{
- return check(new String[]{_idLabel.getText(), getIdText()});
+ return check(new String[]{_idLabel.getText(), getIdText()});
}
void show(String unsubstitutedId, PropertySet nps)
{
- detectUpdates(false);
- _target = nps;
-
- Utils.Resolver resolver = getDetailResolver();
- boolean isEditable = (resolver == null);
-
- PropertySetDescriptor descriptor =
- (PropertySetDescriptor)nps.getDescriptor();
-
- showId(unsubstitutedId, resolver);
- _oldId = unsubstitutedId;
-
- _propertySets.setList(java.util.Arrays.asList(descriptor.references),
- resolver);
- _propertySets.setEditable(isEditable);
-
- _properties.setProperties(descriptor.properties, null, null,
- getDetailResolver(), isEditable);
-
- _applyButton.setEnabled(nps.isEphemeral());
- _discardButton.setEnabled(nps.isEphemeral());
- detectUpdates(true);
+ detectUpdates(false);
+ _target = nps;
+
+ Utils.Resolver resolver = getDetailResolver();
+ boolean isEditable = (resolver == null);
+
+ PropertySetDescriptor descriptor =
+ (PropertySetDescriptor)nps.getDescriptor();
+
+ showId(unsubstitutedId, resolver);
+ _oldId = unsubstitutedId;
+
+ _propertySets.setList(java.util.Arrays.asList(descriptor.references),
+ resolver);
+ _propertySets.setEditable(isEditable);
+
+ _properties.setProperties(descriptor.properties, null, null,
+ getDetailResolver(), isEditable);
+
+ _applyButton.setEnabled(nps.isEphemeral());
+ _discardButton.setEnabled(nps.isEphemeral());
+ detectUpdates(true);
}
protected JComponent getIdComponent()
{
- return _id;
+ return _id;
}
protected String getIdText()
{
- return _id.getText().trim();
+ return _id.getText().trim();
}
protected void showId(String unsubstitutedId, Utils.Resolver resolver)
{
- //
- // This version does NOT substitute the ID
- //
- _id.setText(unsubstitutedId);
- _id.setEditable(resolver == null);
+ //
+ // This version does NOT substitute the ID
+ //
+ _id.setText(unsubstitutedId);
+ _id.setEditable(resolver == null);
}
private PropertySet getPropertySet()
{
- return (PropertySet)_target;
+ return (PropertySet)_target;
}
private String _oldId;
diff --git a/java/src/IceGridGUI/Application/PropertySetParent.java b/java/src/IceGridGUI/Application/PropertySetParent.java
index b7a285650ff..9d5f7a254e8 100755
--- a/java/src/IceGridGUI/Application/PropertySetParent.java
+++ b/java/src/IceGridGUI/Application/PropertySetParent.java
@@ -14,13 +14,13 @@ import IceGridGUI.*;
interface PropertySetParent
{
void tryAdd(String id, PropertySetDescriptor descriptor)
- throws UpdateFailedException;
+ throws UpdateFailedException;
void tryRename(String oldId, String oldUnresolveId, String newUnresolvedId)
- throws UpdateFailedException;
+ throws UpdateFailedException;
void insertPropertySet(PropertySet nps, boolean fireEvent)
- throws UpdateFailedException;
+ throws UpdateFailedException;
void removePropertySet(PropertySet nps);
diff --git a/java/src/IceGridGUI/Application/PropertySets.java b/java/src/IceGridGUI/Application/PropertySets.java
index 2f090f2fb57..843d0f2cc59 100755
--- a/java/src/IceGridGUI/Application/PropertySets.java
+++ b/java/src/IceGridGUI/Application/PropertySets.java
@@ -20,17 +20,17 @@ class PropertySets extends ListTreeNode implements PropertySetParent
static public java.util.Map
copyDescriptors(java.util.Map descriptors)
{
- java.util.Map copy = new java.util.HashMap();
- java.util.Iterator p = descriptors.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ java.util.Map copy = new java.util.HashMap();
+ java.util.Iterator p = descriptors.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- copy.put(entry.getKey(),
- PropertySet.copyDescriptor(
- (PropertySetDescriptor)entry.getValue()));
- }
- return copy;
+ copy.put(entry.getKey(),
+ PropertySet.copyDescriptor(
+ (PropertySetDescriptor)entry.getValue()));
+ }
+ return copy;
}
//
@@ -38,215 +38,215 @@ class PropertySets extends ListTreeNode implements PropertySetParent
//
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
+ boolean[] actions = new boolean[ACTION_COUNT];
- Object descriptor = getCoordinator().getClipboard();
- if(descriptor != null)
- {
- actions[PASTE] = descriptor instanceof PropertySetDescriptor;
- }
+ Object descriptor = getCoordinator().getClipboard();
+ if(descriptor != null)
+ {
+ actions[PASTE] = descriptor instanceof PropertySetDescriptor;
+ }
- actions[NEW_PROPERTY_SET] = true;
- return actions;
+ actions[NEW_PROPERTY_SET] = true;
+ return actions;
}
public JPopupMenu getPopupMenu()
{
- ApplicationActions actions = getCoordinator().getActionsForPopup();
- if(_popup == null)
- {
- _popup = new JPopupMenu();
- _popup.add(actions.get(NEW_PROPERTY_SET));
- }
- actions.setTarget(this);
- return _popup;
+ ApplicationActions actions = getCoordinator().getActionsForPopup();
+ if(_popup == null)
+ {
+ _popup = new JPopupMenu();
+ _popup.add(actions.get(NEW_PROPERTY_SET));
+ }
+ actions.setTarget(this);
+ return _popup;
}
public void newPropertySet()
{
- PropertySetDescriptor descriptor = new
- PropertySetDescriptor(new String[0],
- new java.util.LinkedList());
+ PropertySetDescriptor descriptor = new
+ PropertySetDescriptor(new String[0],
+ new java.util.LinkedList());
- newPropertySet(descriptor);
+ newPropertySet(descriptor);
}
public void paste()
{
- Object descriptor = getCoordinator().getClipboard();
-
- PropertySetDescriptor d = PropertySet.copyDescriptor(
- (PropertySetDescriptor)descriptor);
- newPropertySet(d);
+ Object descriptor = getCoordinator().getClipboard();
+
+ PropertySetDescriptor d = PropertySet.copyDescriptor(
+ (PropertySetDescriptor)descriptor);
+ newPropertySet(d);
}
PropertySets(TreeNode parent, java.util.Map desc)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- super(false, parent, "Property Sets");
- _descriptors = desc;
-
- java.util.Iterator p = _descriptors.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
-
- String id = (String)entry.getKey();
+ super(false, parent, "Property Sets");
+ _descriptors = desc;
+
+ java.util.Iterator p = _descriptors.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+
+ String id = (String)entry.getKey();
- insertChild(new PropertySet(false, this, id, id,
- (PropertySetDescriptor)entry.getValue()), false);
- }
+ insertChild(new PropertySet(false, this, id, id,
+ (PropertySetDescriptor)entry.getValue()), false);
+ }
}
void update(java.util.Map updates, String[] removePropertySets)
- throws UpdateFailedException
- {
- //
- // Note: _descriptors is updated by Root
- //
-
- //
- // One big set of removes
- //
- removeChildren(removePropertySets);
-
- //
- // One big set of updates, followed by inserts
- //
- java.util.Vector newChildren = new java.util.Vector();
-
- java.util.Iterator p = updates.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- String id = (String)entry.getKey();
- PropertySetDescriptor psd = (PropertySetDescriptor)entry.getValue();
- PropertySet child = (PropertySet)findChild(id);
- if(child == null)
- {
- newChildren.add(
- new PropertySet(false, this, id, id, psd));
- }
- else
- {
- child.rebuild(psd);
- }
- }
- insertChildren(newChildren, true);
+ throws UpdateFailedException
+ {
+ //
+ // Note: _descriptors is updated by Root
+ //
+
+ //
+ // One big set of removes
+ //
+ removeChildren(removePropertySets);
+
+ //
+ // One big set of updates, followed by inserts
+ //
+ java.util.Vector newChildren = new java.util.Vector();
+
+ java.util.Iterator p = updates.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ String id = (String)entry.getKey();
+ PropertySetDescriptor psd = (PropertySetDescriptor)entry.getValue();
+ PropertySet child = (PropertySet)findChild(id);
+ if(child == null)
+ {
+ newChildren.add(
+ new PropertySet(false, this, id, id, psd));
+ }
+ else
+ {
+ child.rebuild(psd);
+ }
+ }
+ insertChildren(newChildren, true);
}
java.util.Map getUpdates()
{
- java.util.Map updates = new java.util.HashMap();
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- PropertySet ps = (PropertySet)p.next();
- if(ps.getEditable().isNew() || ps.getEditable().isModified())
- {
- updates.put(ps.getId(), ps.getDescriptor());
- }
- }
- return updates;
+ java.util.Map updates = new java.util.HashMap();
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ PropertySet ps = (PropertySet)p.next();
+ if(ps.getEditable().isNew() || ps.getEditable().isModified())
+ {
+ updates.put(ps.getId(), ps.getDescriptor());
+ }
+ }
+ return updates;
}
void commit()
{
- _editable.commit();
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- PropertySet ps = (PropertySet)p.next();
- ps.commit();
- }
+ _editable.commit();
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ PropertySet ps = (PropertySet)p.next();
+ ps.commit();
+ }
}
Object getDescriptor()
{
- return _descriptors;
+ return _descriptors;
}
public void tryAdd(String id, PropertySetDescriptor descriptor)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- insertChild(
- new PropertySet(true, this, id, id, descriptor),
- true);
+ insertChild(
+ new PropertySet(true, this, id, id, descriptor),
+ true);
- _descriptors.put(id, descriptor);
+ _descriptors.put(id, descriptor);
}
public void tryRename(String oldId, String oldId2, String newId)
- throws UpdateFailedException
- {
- PropertySet oldChild = (PropertySet)findChild(oldId);
- assert oldChild != null;
- removeChild(oldChild);
- PropertySetDescriptor descriptor = (PropertySetDescriptor)oldChild.getDescriptor();
-
- try
- {
- insertChild(
- new PropertySet(true, this, newId, newId, descriptor),
- true);
- }
- catch(UpdateFailedException ex)
- {
- try
- {
- insertChild(oldChild, true);
- }
- catch(UpdateFailedException ufe)
- {
- assert false;
- }
- throw ex;
- }
-
- _editable.removeElement(oldId, oldChild.getEditable(), PropertySet.class);
- _descriptors.remove(oldId);
- _descriptors.put(newId, descriptor);
+ throws UpdateFailedException
+ {
+ PropertySet oldChild = (PropertySet)findChild(oldId);
+ assert oldChild != null;
+ removeChild(oldChild);
+ PropertySetDescriptor descriptor = (PropertySetDescriptor)oldChild.getDescriptor();
+
+ try
+ {
+ insertChild(
+ new PropertySet(true, this, newId, newId, descriptor),
+ true);
+ }
+ catch(UpdateFailedException ex)
+ {
+ try
+ {
+ insertChild(oldChild, true);
+ }
+ catch(UpdateFailedException ufe)
+ {
+ assert false;
+ }
+ throw ex;
+ }
+
+ _editable.removeElement(oldId, oldChild.getEditable(), PropertySet.class);
+ _descriptors.remove(oldId);
+ _descriptors.put(newId, descriptor);
}
public void insertPropertySet(PropertySet nps, boolean fireEvent)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- insertChild(nps, fireEvent);
+ insertChild(nps, fireEvent);
}
public void removePropertySet(PropertySet nps)
{
- removeChild(nps);
+ removeChild(nps);
}
public void removeDescriptor(String id)
{
- _descriptors.remove(id);
+ _descriptors.remove(id);
}
public Editable getEditable()
{
- return super.getEditable();
+ return super.getEditable();
}
private void newPropertySet(PropertySetDescriptor descriptor)
{
- String id = makeNewChildId("PropertySet");
+ String id = makeNewChildId("PropertySet");
- PropertySet propertySet =
- new PropertySet(this, id, descriptor);
+ PropertySet propertySet =
+ new PropertySet(this, id, descriptor);
- try
- {
- insertChild(propertySet, true);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
- getRoot().setSelectedNode(propertySet);
+ try
+ {
+ insertChild(propertySet, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
+ getRoot().setSelectedNode(propertySet);
}
private java.util.Map _descriptors;
diff --git a/java/src/IceGridGUI/Application/ReplicaGroup.java b/java/src/IceGridGUI/Application/ReplicaGroup.java
index a65a48b3989..50abc1dd7e2 100755
--- a/java/src/IceGridGUI/Application/ReplicaGroup.java
+++ b/java/src/IceGridGUI/Application/ReplicaGroup.java
@@ -20,27 +20,27 @@ class ReplicaGroup extends TreeNode
static public ReplicaGroupDescriptor
copyDescriptor(ReplicaGroupDescriptor d)
{
- return (ReplicaGroupDescriptor)d.clone();
+ return (ReplicaGroupDescriptor)d.clone();
}
public Component getTreeCellRendererComponent(
- JTree tree,
- Object value,
- boolean sel,
- boolean expanded,
- boolean leaf,
- int row,
- boolean hasFocus)
- {
- if(_cellRenderer == null)
- {
- _cellRenderer = new DefaultTreeCellRenderer();
- _cellRenderer.setLeafIcon(
- Utils.getIcon("/icons/16x16/replica_group.png"));
- }
-
- return _cellRenderer.getTreeCellRendererComponent(
- tree, value, sel, expanded, leaf, row, hasFocus);
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
+ {
+ if(_cellRenderer == null)
+ {
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _cellRenderer.setLeafIcon(
+ Utils.getIcon("/icons/16x16/replica_group.png"));
+ }
+
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
}
//
@@ -48,173 +48,173 @@ class ReplicaGroup extends TreeNode
//
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
- actions[COPY] = !_ephemeral;
-
- if(((TreeNode)_parent).getAvailableActions()[PASTE])
- {
- actions[PASTE] = true;
- }
- actions[DELETE] = true;
+ boolean[] actions = new boolean[ACTION_COUNT];
+ actions[COPY] = !_ephemeral;
+
+ if(((TreeNode)_parent).getAvailableActions()[PASTE])
+ {
+ actions[PASTE] = true;
+ }
+ actions[DELETE] = true;
- if(!_ephemeral)
- {
- actions[SHOW_VARS] = true;
- actions[SUBSTITUTE_VARS] = true;
- }
- return actions;
+ if(!_ephemeral)
+ {
+ actions[SHOW_VARS] = true;
+ actions[SUBSTITUTE_VARS] = true;
+ }
+ return actions;
}
public void copy()
{
- getCoordinator().setClipboard(copyDescriptor(_descriptor));
- getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
+ getCoordinator().setClipboard(copyDescriptor(_descriptor));
+ getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
}
public void paste()
{
- ((TreeNode)_parent).paste();
+ ((TreeNode)_parent).paste();
}
public void destroy()
{
- ReplicaGroups replicaGroups = (ReplicaGroups)_parent;
- replicaGroups.removeChild(this);
+ ReplicaGroups replicaGroups = (ReplicaGroups)_parent;
+ replicaGroups.removeChild(this);
- if(!_ephemeral)
- {
- replicaGroups.removeDescriptor(_descriptor);
- replicaGroups.getEditable().
- removeElement(_id, _editable, ReplicaGroup.class);
- getRoot().updated();
- }
+ if(!_ephemeral)
+ {
+ replicaGroups.removeDescriptor(_descriptor);
+ replicaGroups.getEditable().
+ removeElement(_id, _editable, ReplicaGroup.class);
+ getRoot().updated();
+ }
}
public Editor getEditor()
{
- if(_editor == null)
- {
- _editor = (ReplicaGroupEditor)getRoot().getEditor(ReplicaGroupEditor.class, this);
- }
- _editor.show(this);
- return _editor;
+ if(_editor == null)
+ {
+ _editor = (ReplicaGroupEditor)getRoot().getEditor(ReplicaGroupEditor.class, this);
+ }
+ _editor.show(this);
+ return _editor;
}
protected Editor createEditor()
{
- return new ReplicaGroupEditor();
+ return new ReplicaGroupEditor();
}
public boolean isEphemeral()
{
- return _ephemeral;
+ return _ephemeral;
}
Object getDescriptor()
{
- return _descriptor;
+ return _descriptor;
}
Object saveDescriptor()
{
- return _descriptor.clone();
+ return _descriptor.clone();
}
void restoreDescriptor(Object savedDescriptor)
{
- ReplicaGroupDescriptor clone = (ReplicaGroupDescriptor)savedDescriptor;
- _descriptor.id = clone.id;
- _descriptor.description = clone.description;
- _descriptor.objects = clone.objects;
- _descriptor.loadBalancing = clone.loadBalancing;
+ ReplicaGroupDescriptor clone = (ReplicaGroupDescriptor)savedDescriptor;
+ _descriptor.id = clone.id;
+ _descriptor.description = clone.description;
+ _descriptor.objects = clone.objects;
+ _descriptor.loadBalancing = clone.loadBalancing;
}
void commit()
{
- _editable.commit();
+ _editable.commit();
}
Editable getEditable()
{
- return _editable;
+ return _editable;
}
ReplicaGroup(boolean brandNew,
- TreeNode parent,
- ReplicaGroupDescriptor descriptor)
+ TreeNode parent,
+ ReplicaGroupDescriptor descriptor)
{
- super(parent, descriptor.id);
- _ephemeral = false;
- _editable = new Editable(brandNew);
- rebuild(descriptor);
+ super(parent, descriptor.id);
+ _ephemeral = false;
+ _editable = new Editable(brandNew);
+ rebuild(descriptor);
}
ReplicaGroup(TreeNode parent, ReplicaGroupDescriptor descriptor)
{
- super(parent, descriptor.id);
- _ephemeral = true;
- _editable = null;
- rebuild(descriptor);
+ super(parent, descriptor.id);
+ _ephemeral = true;
+ _editable = null;
+ rebuild(descriptor);
}
void write(XMLWriter writer) throws java.io.IOException
{
- if(!_ephemeral)
- {
- java.util.List attributes = new java.util.LinkedList();
- attributes.add(createAttribute("id", _descriptor.id));
-
- if(_descriptor.loadBalancing == null &&
- _descriptor.description.length() == 0 && _descriptor.objects.isEmpty())
- {
- writer.writeElement("replica-group", attributes);
- }
- else
- {
- writer.writeStartTag("replica-group", attributes);
-
- if(_descriptor.description.length() > 0)
- {
- writer.writeElement("description", _descriptor.description);
- }
- assert _descriptor.loadBalancing != null;
-
- attributes.clear();
- if(_descriptor.loadBalancing instanceof RandomLoadBalancingPolicy)
- {
- attributes.add(createAttribute("type", "random"));
- }
- else if(_descriptor.loadBalancing instanceof OrderedLoadBalancingPolicy)
- {
- attributes.add(createAttribute("type", "ordered"));
- }
- else if(_descriptor.loadBalancing instanceof RoundRobinLoadBalancingPolicy)
- {
- attributes.add(createAttribute("type", "round-robin"));
- }
- else if(_descriptor.loadBalancing instanceof AdaptiveLoadBalancingPolicy)
- {
- attributes.add(createAttribute("type", "adaptive"));
- AdaptiveLoadBalancingPolicy policy =
- (AdaptiveLoadBalancingPolicy)_descriptor.loadBalancing;
- attributes.add(createAttribute("load-sample", policy.loadSample));
- }
- attributes.add(createAttribute("n-replicas",
- _descriptor.loadBalancing.nReplicas));
- writer.writeElement("load-balancing", attributes);
-
- writeObjects("object", writer, _descriptor.objects, null);
- writer.writeEndTag("replica-group");
- }
- }
+ if(!_ephemeral)
+ {
+ java.util.List attributes = new java.util.LinkedList();
+ attributes.add(createAttribute("id", _descriptor.id));
+
+ if(_descriptor.loadBalancing == null &&
+ _descriptor.description.length() == 0 && _descriptor.objects.isEmpty())
+ {
+ writer.writeElement("replica-group", attributes);
+ }
+ else
+ {
+ writer.writeStartTag("replica-group", attributes);
+
+ if(_descriptor.description.length() > 0)
+ {
+ writer.writeElement("description", _descriptor.description);
+ }
+ assert _descriptor.loadBalancing != null;
+
+ attributes.clear();
+ if(_descriptor.loadBalancing instanceof RandomLoadBalancingPolicy)
+ {
+ attributes.add(createAttribute("type", "random"));
+ }
+ else if(_descriptor.loadBalancing instanceof OrderedLoadBalancingPolicy)
+ {
+ attributes.add(createAttribute("type", "ordered"));
+ }
+ else if(_descriptor.loadBalancing instanceof RoundRobinLoadBalancingPolicy)
+ {
+ attributes.add(createAttribute("type", "round-robin"));
+ }
+ else if(_descriptor.loadBalancing instanceof AdaptiveLoadBalancingPolicy)
+ {
+ attributes.add(createAttribute("type", "adaptive"));
+ AdaptiveLoadBalancingPolicy policy =
+ (AdaptiveLoadBalancingPolicy)_descriptor.loadBalancing;
+ attributes.add(createAttribute("load-sample", policy.loadSample));
+ }
+ attributes.add(createAttribute("n-replicas",
+ _descriptor.loadBalancing.nReplicas));
+ writer.writeElement("load-balancing", attributes);
+
+ writeObjects("object", writer, _descriptor.objects, null);
+ writer.writeEndTag("replica-group");
+ }
+ }
}
void rebuild(ReplicaGroupDescriptor descriptor)
{
- _descriptor = descriptor;
- //
- // And that's it since there is no children
- //
+ _descriptor = descriptor;
+ //
+ // And that's it since there is no children
+ //
}
private ReplicaGroupDescriptor _descriptor;
diff --git a/java/src/IceGridGUI/Application/ReplicaGroupEditor.java b/java/src/IceGridGUI/Application/ReplicaGroupEditor.java
index a93852cd935..d0762ed687a 100755
--- a/java/src/IceGridGUI/Application/ReplicaGroupEditor.java
+++ b/java/src/IceGridGUI/Application/ReplicaGroupEditor.java
@@ -34,402 +34,402 @@ class ReplicaGroupEditor extends Editor
{
protected boolean applyUpdate(boolean refresh)
{
- ReplicaGroup replicaGroup = (ReplicaGroup)_target;
- Root root = replicaGroup.getRoot();
-
- root.disableSelectionListener();
- try
- {
- if(replicaGroup.isEphemeral())
- {
- ReplicaGroups replicaGroups = (ReplicaGroups)replicaGroup.getParent();
- writeDescriptor();
- ReplicaGroupDescriptor descriptor =
- (ReplicaGroupDescriptor)replicaGroup.getDescriptor();
- replicaGroup.destroy(); // just removes the child
-
- try
- {
- replicaGroups.tryAdd(descriptor, true);
- }
- catch(UpdateFailedException e)
- {
- //
- // Add back ephemeral child
- //
- try
- {
- replicaGroups.insertChild(replicaGroup, true);
- }
- catch(UpdateFailedException die)
- {
- assert false;
- }
- root.setSelectedNode(replicaGroup);
-
- JOptionPane.showMessageDialog(
- root.getCoordinator().getMainFrame(),
- e.toString(),
- "Apply failed",
- JOptionPane.ERROR_MESSAGE);
- return false;
- }
-
- //
- // Success
- //
- _target = replicaGroups.findChildWithDescriptor(descriptor);
- root.updated();
- }
- else if(isSimpleUpdate())
- {
- writeDescriptor();
- root.updated();
- replicaGroup.getEditable().markModified();
- }
- else
- {
- //
- // Save to be able to rollback
- //
- Object savedDescriptor = replicaGroup.saveDescriptor();
- ReplicaGroups replicaGroups = (ReplicaGroups)replicaGroup.getParent();
- writeDescriptor();
- ReplicaGroupDescriptor descriptor =
- (ReplicaGroupDescriptor)replicaGroup.getDescriptor();
-
- replicaGroups.removeChild(replicaGroup);
- try
- {
- replicaGroups.tryAdd(descriptor, false);
- }
- catch(UpdateFailedException e)
- {
- //
- // Restore all
- //
- try
- {
- replicaGroups.insertChild(replicaGroup, true);
- }
- catch(UpdateFailedException die)
- {
- assert false;
- }
- replicaGroup.restoreDescriptor(savedDescriptor);
- root.setSelectedNode(_target);
-
- JOptionPane.showMessageDialog(
- root.getCoordinator().getMainFrame(),
- e.toString(),
- "Apply failed",
- JOptionPane.ERROR_MESSAGE);
- return false;
- }
-
- //
- // Success
- //
-
- // replaced by brand new ReplicaGroup
- replicaGroups.getEditable().
- removeElement(replicaGroup.getId(),
- replicaGroup.getEditable(), ReplicaGroup.class);
-
- _target = replicaGroups.findChildWithDescriptor(descriptor);
- root.updated();
-
- if(refresh)
- {
- root.setSelectedNode(_target);
- }
- }
-
- if(refresh)
- {
- root.getCoordinator().getCurrentTab().showNode(_target);
- }
- _applyButton.setEnabled(false);
- _discardButton.setEnabled(false);
- return true;
- }
- finally
- {
- root.enableSelectionListener();
- }
+ ReplicaGroup replicaGroup = (ReplicaGroup)_target;
+ Root root = replicaGroup.getRoot();
+
+ root.disableSelectionListener();
+ try
+ {
+ if(replicaGroup.isEphemeral())
+ {
+ ReplicaGroups replicaGroups = (ReplicaGroups)replicaGroup.getParent();
+ writeDescriptor();
+ ReplicaGroupDescriptor descriptor =
+ (ReplicaGroupDescriptor)replicaGroup.getDescriptor();
+ replicaGroup.destroy(); // just removes the child
+
+ try
+ {
+ replicaGroups.tryAdd(descriptor, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ //
+ // Add back ephemeral child
+ //
+ try
+ {
+ replicaGroups.insertChild(replicaGroup, true);
+ }
+ catch(UpdateFailedException die)
+ {
+ assert false;
+ }
+ root.setSelectedNode(replicaGroup);
+
+ JOptionPane.showMessageDialog(
+ root.getCoordinator().getMainFrame(),
+ e.toString(),
+ "Apply failed",
+ JOptionPane.ERROR_MESSAGE);
+ return false;
+ }
+
+ //
+ // Success
+ //
+ _target = replicaGroups.findChildWithDescriptor(descriptor);
+ root.updated();
+ }
+ else if(isSimpleUpdate())
+ {
+ writeDescriptor();
+ root.updated();
+ replicaGroup.getEditable().markModified();
+ }
+ else
+ {
+ //
+ // Save to be able to rollback
+ //
+ Object savedDescriptor = replicaGroup.saveDescriptor();
+ ReplicaGroups replicaGroups = (ReplicaGroups)replicaGroup.getParent();
+ writeDescriptor();
+ ReplicaGroupDescriptor descriptor =
+ (ReplicaGroupDescriptor)replicaGroup.getDescriptor();
+
+ replicaGroups.removeChild(replicaGroup);
+ try
+ {
+ replicaGroups.tryAdd(descriptor, false);
+ }
+ catch(UpdateFailedException e)
+ {
+ //
+ // Restore all
+ //
+ try
+ {
+ replicaGroups.insertChild(replicaGroup, true);
+ }
+ catch(UpdateFailedException die)
+ {
+ assert false;
+ }
+ replicaGroup.restoreDescriptor(savedDescriptor);
+ root.setSelectedNode(_target);
+
+ JOptionPane.showMessageDialog(
+ root.getCoordinator().getMainFrame(),
+ e.toString(),
+ "Apply failed",
+ JOptionPane.ERROR_MESSAGE);
+ return false;
+ }
+
+ //
+ // Success
+ //
+
+ // replaced by brand new ReplicaGroup
+ replicaGroups.getEditable().
+ removeElement(replicaGroup.getId(),
+ replicaGroup.getEditable(), ReplicaGroup.class);
+
+ _target = replicaGroups.findChildWithDescriptor(descriptor);
+ root.updated();
+
+ if(refresh)
+ {
+ root.setSelectedNode(_target);
+ }
+ }
+
+ if(refresh)
+ {
+ root.getCoordinator().getCurrentTab().showNode(_target);
+ }
+ _applyButton.setEnabled(false);
+ _discardButton.setEnabled(false);
+ return true;
+ }
+ finally
+ {
+ root.enableSelectionListener();
+ }
}
Utils.Resolver getDetailResolver()
{
- Root root = _target.getRoot();
-
- if(root.getCoordinator().substitute())
- {
- return root.getResolver();
- }
- else
- {
- return null;
- }
+ Root root = _target.getRoot();
+
+ if(root.getCoordinator().substitute())
+ {
+ return root.getResolver();
+ }
+ else
+ {
+ return null;
+ }
}
ReplicaGroupEditor()
{
- _objects = new MapField(this, "Identity", "Type", true);
-
- //
- // load balancing
- //
- _loadBalancing.addItemListener(new ItemListener()
- {
- public void itemStateChanged(ItemEvent e)
- {
- if(e.getStateChange() == ItemEvent.SELECTED)
- {
- updated();
-
- Object item = e.getItem();
- _loadSampleLabel.setVisible(item == ADAPTIVE);
- _loadSample.setVisible(item == ADAPTIVE);
- }
- }
- });
- _loadBalancing.setToolTipText(
- "<html>Specifies how IceGrid selects adapters and return<br>"
- + "their endpoints when resolving a replica group ID</html>");
-
- //
- // Associate updateListener with various fields
- //
- _id.getDocument().addDocumentListener(_updateListener);
- _id.setToolTipText("Must be unique within this IceGrid deployment");
-
- _description.getDocument().addDocumentListener(_updateListener);
- _description.setToolTipText(
- "An optional description for this replica group");
-
- _nReplicas.getDocument().addDocumentListener(_updateListener);
- _nReplicas.setToolTipText("<html>IceGrid returns the endpoints of "
- + "up to <i>number</i> adapters<br>"
- + "when resolving a replica group ID.<br>"
- + "Enter 0 to returns the endpoints of all adapters.</html>");
-
- _loadSample.setEditable(true);
- JTextField loadSampleTextField = (JTextField)
- _loadSample.getEditor().getEditorComponent();
- loadSampleTextField.getDocument().addDocumentListener(_updateListener);
- _loadSample.setToolTipText(
- "Use the load average or CPU usage over the last 1, 5 or 15 minutes?");
+ _objects = new MapField(this, "Identity", "Type", true);
+
+ //
+ // load balancing
+ //
+ _loadBalancing.addItemListener(new ItemListener()
+ {
+ public void itemStateChanged(ItemEvent e)
+ {
+ if(e.getStateChange() == ItemEvent.SELECTED)
+ {
+ updated();
+
+ Object item = e.getItem();
+ _loadSampleLabel.setVisible(item == ADAPTIVE);
+ _loadSample.setVisible(item == ADAPTIVE);
+ }
+ }
+ });
+ _loadBalancing.setToolTipText(
+ "<html>Specifies how IceGrid selects adapters and return<br>"
+ + "their endpoints when resolving a replica group ID</html>");
+
+ //
+ // Associate updateListener with various fields
+ //
+ _id.getDocument().addDocumentListener(_updateListener);
+ _id.setToolTipText("Must be unique within this IceGrid deployment");
+
+ _description.getDocument().addDocumentListener(_updateListener);
+ _description.setToolTipText(
+ "An optional description for this replica group");
+
+ _nReplicas.getDocument().addDocumentListener(_updateListener);
+ _nReplicas.setToolTipText("<html>IceGrid returns the endpoints of "
+ + "up to <i>number</i> adapters<br>"
+ + "when resolving a replica group ID.<br>"
+ + "Enter 0 to returns the endpoints of all adapters.</html>");
+
+ _loadSample.setEditable(true);
+ JTextField loadSampleTextField = (JTextField)
+ _loadSample.getEditor().getEditorComponent();
+ loadSampleTextField.getDocument().addDocumentListener(_updateListener);
+ _loadSample.setToolTipText(
+ "Use the load average or CPU usage over the last 1, 5 or 15 minutes?");
}
void writeDescriptor()
{
- ReplicaGroupDescriptor descriptor =
- (ReplicaGroupDescriptor)getReplicaGroup().getDescriptor();
-
- descriptor.id = _id.getText().trim();
- descriptor.description = _description.getText();
- descriptor.objects = mapToObjectDescriptorSeq(_objects.get());
-
- Object loadBalancing = _loadBalancing.getSelectedItem();
- if(loadBalancing == ORDERED)
- {
- descriptor.loadBalancing = new OrderedLoadBalancingPolicy(
- _nReplicas.getText().trim());
- }
- else if(loadBalancing == RANDOM)
- {
- descriptor.loadBalancing = new RandomLoadBalancingPolicy(
- _nReplicas.getText().trim());
- }
- else if(loadBalancing == ROUND_ROBIN)
- {
- descriptor.loadBalancing = new RoundRobinLoadBalancingPolicy(
- _nReplicas.getText().trim());
- }
- else if(loadBalancing == ADAPTIVE)
- {
- descriptor.loadBalancing = new AdaptiveLoadBalancingPolicy(
- _nReplicas.getText().trim(),
- _loadSample.getSelectedItem().toString().trim());
- }
- else
- {
- assert false;
- }
- }
+ ReplicaGroupDescriptor descriptor =
+ (ReplicaGroupDescriptor)getReplicaGroup().getDescriptor();
+
+ descriptor.id = _id.getText().trim();
+ descriptor.description = _description.getText();
+ descriptor.objects = mapToObjectDescriptorSeq(_objects.get());
+
+ Object loadBalancing = _loadBalancing.getSelectedItem();
+ if(loadBalancing == ORDERED)
+ {
+ descriptor.loadBalancing = new OrderedLoadBalancingPolicy(
+ _nReplicas.getText().trim());
+ }
+ else if(loadBalancing == RANDOM)
+ {
+ descriptor.loadBalancing = new RandomLoadBalancingPolicy(
+ _nReplicas.getText().trim());
+ }
+ else if(loadBalancing == ROUND_ROBIN)
+ {
+ descriptor.loadBalancing = new RoundRobinLoadBalancingPolicy(
+ _nReplicas.getText().trim());
+ }
+ else if(loadBalancing == ADAPTIVE)
+ {
+ descriptor.loadBalancing = new AdaptiveLoadBalancingPolicy(
+ _nReplicas.getText().trim(),
+ _loadSample.getSelectedItem().toString().trim());
+ }
+ else
+ {
+ assert false;
+ }
+ }
boolean isSimpleUpdate()
{
- ReplicaGroupDescriptor descriptor =
- (ReplicaGroupDescriptor)getReplicaGroup().getDescriptor();
- return descriptor.id.equals(_id.getText().trim());
+ ReplicaGroupDescriptor descriptor =
+ (ReplicaGroupDescriptor)getReplicaGroup().getDescriptor();
+ return descriptor.id.equals(_id.getText().trim());
}
protected void appendProperties(DefaultFormBuilder builder)
{
- builder.append("Replica Group ID");
- builder.append(_id, 3);
- builder.nextLine();
-
- builder.append("Description");
- builder.nextLine();
- builder.append("");
- builder.nextRow(-2);
- CellConstraints cc = new CellConstraints();
- JScrollPane scrollPane = new JScrollPane(_description);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 3));
- builder.nextRow(2);
- builder.nextLine();
-
- builder.append("Well-known Objects");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
- builder.nextRow(-6);
- scrollPane = new JScrollPane(_objects);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
- builder.nextRow(6);
- builder.nextLine();
-
- builder.append("Load Balancing Policy");
- builder.append(_loadBalancing, 3);
- builder.nextLine();
- builder.append("How many Adapters? (0 = all)");
- builder.append(_nReplicas, 3);
- builder.nextLine();
- _loadSampleLabel = builder.append("Load Sample");
- builder.append(_loadSample, 3);
- builder.nextLine();
+ builder.append("Replica Group ID");
+ builder.append(_id, 3);
+ builder.nextLine();
+
+ builder.append("Description");
+ builder.nextLine();
+ builder.append("");
+ builder.nextRow(-2);
+ CellConstraints cc = new CellConstraints();
+ JScrollPane scrollPane = new JScrollPane(_description);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 3));
+ builder.nextRow(2);
+ builder.nextLine();
+
+ builder.append("Well-known Objects");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+ builder.nextRow(-6);
+ scrollPane = new JScrollPane(_objects);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
+ builder.nextRow(6);
+ builder.nextLine();
+
+ builder.append("Load Balancing Policy");
+ builder.append(_loadBalancing, 3);
+ builder.nextLine();
+ builder.append("How many Adapters? (0 = all)");
+ builder.append(_nReplicas, 3);
+ builder.nextLine();
+ _loadSampleLabel = builder.append("Load Sample");
+ builder.append(_loadSample, 3);
+ builder.nextLine();
}
protected void buildPropertiesPanel()
{
- super.buildPropertiesPanel();
- _propertiesPanel.setName("Replica Group Properties");
+ super.buildPropertiesPanel();
+ _propertiesPanel.setName("Replica Group Properties");
}
protected boolean validate()
{
- return check(new String[]{"Replica Group ID", _id.getText().trim()});
+ return check(new String[]{"Replica Group ID", _id.getText().trim()});
}
void show(ReplicaGroup replicaGroup)
{
- //
- // Make sure everything is built
- //
- getProperties();
-
- detectUpdates(false);
- _target = replicaGroup;
-
- Utils.Resolver resolver = getDetailResolver();
- boolean isEditable = (resolver == null);
-
- ReplicaGroupDescriptor descriptor =
- (ReplicaGroupDescriptor)replicaGroup.getDescriptor();
-
- _id.setText(descriptor.id);
- _id.setEditable(isEditable);
-
- _description.setText(
- Utils.substitute(descriptor.description, resolver));
- _description.setEditable(isEditable);
- _description.setOpaque(isEditable);
-
- _objects.set(objectDescriptorSeqToMap(descriptor.objects), resolver, isEditable);
-
- _loadBalancing.setEnabled(true);
-
- if(descriptor.loadBalancing == null)
- {
- _loadBalancing.setSelectedItem(RANDOM);
- _nReplicas.setText("0");
- _loadSample.setSelectedItem("1");
- }
- else if(descriptor.loadBalancing instanceof RandomLoadBalancingPolicy)
- {
- _loadBalancing.setSelectedItem(RANDOM);
- _nReplicas.setText(
- Utils.substitute(descriptor.loadBalancing.nReplicas, resolver));
- _loadSample.setSelectedItem("1");
- }
- else if(descriptor.loadBalancing instanceof OrderedLoadBalancingPolicy)
- {
- _loadBalancing.setSelectedItem(ORDERED);
- _nReplicas.setText(
- Utils.substitute(descriptor.loadBalancing.nReplicas, resolver));
- _loadSample.setSelectedItem("1");
- }
- else if(descriptor.loadBalancing instanceof RoundRobinLoadBalancingPolicy)
- {
- _loadBalancing.setSelectedItem(ROUND_ROBIN);
- _nReplicas.setText(
- Utils.substitute(descriptor.loadBalancing.nReplicas, resolver));
- _loadSample.setSelectedItem("1");
- }
- else if(descriptor.loadBalancing instanceof AdaptiveLoadBalancingPolicy)
- {
- _loadBalancing.setSelectedItem(ADAPTIVE);
- _nReplicas.setText(
- Utils.substitute(descriptor.loadBalancing.nReplicas, resolver));
-
- _loadSample.setSelectedItem(
- Utils.substitute(
- ((AdaptiveLoadBalancingPolicy)descriptor.loadBalancing).loadSample,
- resolver));
- }
- else
- {
- assert false;
- }
- _nReplicas.setEditable(isEditable);
- _loadSample.setEditable(isEditable);
- _loadBalancing.setEnabled(isEditable);
-
- _applyButton.setEnabled(replicaGroup.isEphemeral());
- _discardButton.setEnabled(replicaGroup.isEphemeral());
- detectUpdates(true);
+ //
+ // Make sure everything is built
+ //
+ getProperties();
+
+ detectUpdates(false);
+ _target = replicaGroup;
+
+ Utils.Resolver resolver = getDetailResolver();
+ boolean isEditable = (resolver == null);
+
+ ReplicaGroupDescriptor descriptor =
+ (ReplicaGroupDescriptor)replicaGroup.getDescriptor();
+
+ _id.setText(descriptor.id);
+ _id.setEditable(isEditable);
+
+ _description.setText(
+ Utils.substitute(descriptor.description, resolver));
+ _description.setEditable(isEditable);
+ _description.setOpaque(isEditable);
+
+ _objects.set(objectDescriptorSeqToMap(descriptor.objects), resolver, isEditable);
+
+ _loadBalancing.setEnabled(true);
+
+ if(descriptor.loadBalancing == null)
+ {
+ _loadBalancing.setSelectedItem(RANDOM);
+ _nReplicas.setText("0");
+ _loadSample.setSelectedItem("1");
+ }
+ else if(descriptor.loadBalancing instanceof RandomLoadBalancingPolicy)
+ {
+ _loadBalancing.setSelectedItem(RANDOM);
+ _nReplicas.setText(
+ Utils.substitute(descriptor.loadBalancing.nReplicas, resolver));
+ _loadSample.setSelectedItem("1");
+ }
+ else if(descriptor.loadBalancing instanceof OrderedLoadBalancingPolicy)
+ {
+ _loadBalancing.setSelectedItem(ORDERED);
+ _nReplicas.setText(
+ Utils.substitute(descriptor.loadBalancing.nReplicas, resolver));
+ _loadSample.setSelectedItem("1");
+ }
+ else if(descriptor.loadBalancing instanceof RoundRobinLoadBalancingPolicy)
+ {
+ _loadBalancing.setSelectedItem(ROUND_ROBIN);
+ _nReplicas.setText(
+ Utils.substitute(descriptor.loadBalancing.nReplicas, resolver));
+ _loadSample.setSelectedItem("1");
+ }
+ else if(descriptor.loadBalancing instanceof AdaptiveLoadBalancingPolicy)
+ {
+ _loadBalancing.setSelectedItem(ADAPTIVE);
+ _nReplicas.setText(
+ Utils.substitute(descriptor.loadBalancing.nReplicas, resolver));
+
+ _loadSample.setSelectedItem(
+ Utils.substitute(
+ ((AdaptiveLoadBalancingPolicy)descriptor.loadBalancing).loadSample,
+ resolver));
+ }
+ else
+ {
+ assert false;
+ }
+ _nReplicas.setEditable(isEditable);
+ _loadSample.setEditable(isEditable);
+ _loadBalancing.setEnabled(isEditable);
+
+ _applyButton.setEnabled(replicaGroup.isEphemeral());
+ _discardButton.setEnabled(replicaGroup.isEphemeral());
+ detectUpdates(true);
}
private ReplicaGroup getReplicaGroup()
{
- return (ReplicaGroup)_target;
+ return (ReplicaGroup)_target;
}
private java.util.Map objectDescriptorSeqToMap(java.util.List objects)
{
- java.util.Map result = new java.util.TreeMap();
- java.util.Iterator p = objects.iterator();
- while(p.hasNext())
- {
- ObjectDescriptor od = (ObjectDescriptor)p.next();
- result.put(Ice.Util.identityToString(od.id),
- od.type);
- }
- return result;
+ java.util.Map result = new java.util.TreeMap();
+ java.util.Iterator p = objects.iterator();
+ while(p.hasNext())
+ {
+ ObjectDescriptor od = (ObjectDescriptor)p.next();
+ result.put(Ice.Util.identityToString(od.id),
+ od.type);
+ }
+ return result;
}
private java.util.LinkedList mapToObjectDescriptorSeq(java.util.Map map)
{
- java.util.LinkedList result = new java.util.LinkedList();
- java.util.Iterator p = map.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- Ice.Identity id =
- Ice.Util.stringToIdentity((String)entry.getKey());
- String type = (String)entry.getValue();
- result.add(new ObjectDescriptor(id, type));
- }
- return result;
+ java.util.LinkedList result = new java.util.LinkedList();
+ java.util.Iterator p = map.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ Ice.Identity id =
+ Ice.Util.stringToIdentity((String)entry.getKey());
+ String type = (String)entry.getValue();
+ result.add(new ObjectDescriptor(id, type));
+ }
+ return result;
}
@@ -442,13 +442,13 @@ class ReplicaGroupEditor extends Editor
private JTextArea _description = new JTextArea(3, 20);
private JComboBox _loadBalancing = new JComboBox(new Object[]
- {ADAPTIVE, ORDERED, RANDOM, ROUND_ROBIN});
+ {ADAPTIVE, ORDERED, RANDOM, ROUND_ROBIN});
private JTextField _nReplicas = new JTextField(20);
private JLabel _loadSampleLabel;
private JComboBox _loadSample = new JComboBox(new Object[]
- {"1", "5", "15"});
+ {"1", "5", "15"});
private MapField _objects;
}
diff --git a/java/src/IceGridGUI/Application/ReplicaGroups.java b/java/src/IceGridGUI/Application/ReplicaGroups.java
index 47960ef28bc..6ab770a779a 100755
--- a/java/src/IceGridGUI/Application/ReplicaGroups.java
+++ b/java/src/IceGridGUI/Application/ReplicaGroups.java
@@ -20,14 +20,14 @@ class ReplicaGroups extends ListTreeNode
static public java.util.List
copyDescriptors(java.util.List descriptors)
{
- java.util.List copy = new java.util.LinkedList();
- java.util.Iterator p = descriptors.iterator();
- while(p.hasNext())
- {
- copy.add(ReplicaGroup.copyDescriptor(
- (ReplicaGroupDescriptor)p.next()));
- }
- return copy;
+ java.util.List copy = new java.util.LinkedList();
+ java.util.Iterator p = descriptors.iterator();
+ while(p.hasNext())
+ {
+ copy.add(ReplicaGroup.copyDescriptor(
+ (ReplicaGroupDescriptor)p.next()));
+ }
+ return copy;
}
//
@@ -35,198 +35,198 @@ class ReplicaGroups extends ListTreeNode
//
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
+ boolean[] actions = new boolean[ACTION_COUNT];
- Object descriptor = getCoordinator().getClipboard();
- if(descriptor != null)
- {
- actions[PASTE] = descriptor instanceof ReplicaGroupDescriptor;
- }
+ Object descriptor = getCoordinator().getClipboard();
+ if(descriptor != null)
+ {
+ actions[PASTE] = descriptor instanceof ReplicaGroupDescriptor;
+ }
- actions[NEW_REPLICA_GROUP] = true;
- return actions;
+ actions[NEW_REPLICA_GROUP] = true;
+ return actions;
}
public JPopupMenu getPopupMenu()
{
- ApplicationActions actions = getCoordinator().getActionsForPopup();
- if(_popup == null)
- {
- _popup = new JPopupMenu();
- _popup.add(actions.get(NEW_REPLICA_GROUP));
- }
- actions.setTarget(this);
- return _popup;
+ ApplicationActions actions = getCoordinator().getActionsForPopup();
+ if(_popup == null)
+ {
+ _popup = new JPopupMenu();
+ _popup.add(actions.get(NEW_REPLICA_GROUP));
+ }
+ actions.setTarget(this);
+ return _popup;
}
public void newReplicaGroup()
{
- ReplicaGroupDescriptor descriptor = new
- ReplicaGroupDescriptor(
- makeNewChildId("NewReplicaGroup"),
- null,
- new java.util.LinkedList(),
- "");
-
- newReplicaGroup(descriptor);
+ ReplicaGroupDescriptor descriptor = new
+ ReplicaGroupDescriptor(
+ makeNewChildId("NewReplicaGroup"),
+ null,
+ new java.util.LinkedList(),
+ "");
+
+ newReplicaGroup(descriptor);
}
public void paste()
{
- Object descriptor = getCoordinator().getClipboard();
-
- ReplicaGroupDescriptor d = ReplicaGroup.copyDescriptor(
- (ReplicaGroupDescriptor)descriptor);
- d.id = makeNewChildId(d.id);
- newReplicaGroup(d);
+ Object descriptor = getCoordinator().getClipboard();
+
+ ReplicaGroupDescriptor d = ReplicaGroup.copyDescriptor(
+ (ReplicaGroupDescriptor)descriptor);
+ d.id = makeNewChildId(d.id);
+ newReplicaGroup(d);
}
ReplicaGroups(TreeNode parent, java.util.List desc) throws UpdateFailedException
{
- super(false, parent, "Replica Groups");
- _descriptors = desc;
-
- java.util.Iterator p = _descriptors.iterator();
- while(p.hasNext())
- {
- ReplicaGroupDescriptor descriptor
- = (ReplicaGroupDescriptor)p.next();
-
- insertChild(new ReplicaGroup(false, this, descriptor), false);
- }
+ super(false, parent, "Replica Groups");
+ _descriptors = desc;
+
+ java.util.Iterator p = _descriptors.iterator();
+ while(p.hasNext())
+ {
+ ReplicaGroupDescriptor descriptor
+ = (ReplicaGroupDescriptor)p.next();
+
+ insertChild(new ReplicaGroup(false, this, descriptor), false);
+ }
}
java.util.LinkedList getUpdates()
{
- java.util.LinkedList updates = new java.util.LinkedList();
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- ReplicaGroup ra = (ReplicaGroup)p.next();
- if(ra.getEditable().isNew() || ra.getEditable().isModified())
- {
- updates.add(ra.getDescriptor());
- }
- }
- return updates;
+ java.util.LinkedList updates = new java.util.LinkedList();
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ ReplicaGroup ra = (ReplicaGroup)p.next();
+ if(ra.getEditable().isNew() || ra.getEditable().isModified())
+ {
+ updates.add(ra.getDescriptor());
+ }
+ }
+ return updates;
}
void commit()
{
- _editable.commit();
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- ReplicaGroup rg = (ReplicaGroup)p.next();
- rg.commit();
- }
+ _editable.commit();
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ ReplicaGroup rg = (ReplicaGroup)p.next();
+ rg.commit();
+ }
}
void update(java.util.List descriptors, String[] removeReplicaGroups)
{
- _descriptors = descriptors;
-
- //
- // One big set of removes
- //
- removeChildren(removeReplicaGroups);
-
- //
- // Updates and inserts
- //
- java.util.List updatedChildren = new java.util.LinkedList();
- java.util.Iterator p = descriptors.iterator();
- while(p.hasNext())
- {
- ReplicaGroupDescriptor descriptor =
- (ReplicaGroupDescriptor)p.next();
-
- ReplicaGroup child
- = (ReplicaGroup)findChild(descriptor.id);
-
- if(child == null)
- {
- try
- {
- insertChild(
- new ReplicaGroup(false, this, descriptor),
- true);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
- }
- else
- {
- child.rebuild(descriptor);
- updatedChildren.add(child);
- }
- }
- childrenChanged(updatedChildren);
+ _descriptors = descriptors;
+
+ //
+ // One big set of removes
+ //
+ removeChildren(removeReplicaGroups);
+
+ //
+ // Updates and inserts
+ //
+ java.util.List updatedChildren = new java.util.LinkedList();
+ java.util.Iterator p = descriptors.iterator();
+ while(p.hasNext())
+ {
+ ReplicaGroupDescriptor descriptor =
+ (ReplicaGroupDescriptor)p.next();
+
+ ReplicaGroup child
+ = (ReplicaGroup)findChild(descriptor.id);
+
+ if(child == null)
+ {
+ try
+ {
+ insertChild(
+ new ReplicaGroup(false, this, descriptor),
+ true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
+ }
+ else
+ {
+ child.rebuild(descriptor);
+ updatedChildren.add(child);
+ }
+ }
+ childrenChanged(updatedChildren);
}
Object getDescriptor()
{
- return _descriptors;
+ return _descriptors;
}
/*
Object saveDescriptor()
{
- assert false;
- return null;
+ assert false;
+ return null;
}
void restoreDescriptor(Object savedDescriptor)
{
- assert false;
+ assert false;
}
*/
void removeDescriptor(Object descriptor)
{
- //
- // A straight remove uses equals(), which is not the desired behavior
- //
- java.util.Iterator p = _descriptors.iterator();
- while(p.hasNext())
- {
- if(descriptor == p.next())
- {
- p.remove();
- break;
- }
- }
+ //
+ // A straight remove uses equals(), which is not the desired behavior
+ //
+ java.util.Iterator p = _descriptors.iterator();
+ while(p.hasNext())
+ {
+ if(descriptor == p.next())
+ {
+ p.remove();
+ break;
+ }
+ }
}
void tryAdd(ReplicaGroupDescriptor descriptor, boolean addDescriptor)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- insertChild(
- new ReplicaGroup(true, this, descriptor),
- true);
-
- if(addDescriptor)
- {
- _descriptors.add(descriptor);
- }
+ insertChild(
+ new ReplicaGroup(true, this, descriptor),
+ true);
+
+ if(addDescriptor)
+ {
+ _descriptors.add(descriptor);
+ }
}
private void newReplicaGroup(ReplicaGroupDescriptor descriptor)
{
- ReplicaGroup replicaGroup =
- new ReplicaGroup(this, descriptor);
-
- try
- {
- insertChild(replicaGroup, true);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
- getRoot().setSelectedNode(replicaGroup);
+ ReplicaGroup replicaGroup =
+ new ReplicaGroup(this, descriptor);
+
+ try
+ {
+ insertChild(replicaGroup, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
+ getRoot().setSelectedNode(replicaGroup);
}
private java.util.List _descriptors;
diff --git a/java/src/IceGridGUI/Application/Root.java b/java/src/IceGridGUI/Application/Root.java
index 80122504967..572f2e00897 100755
--- a/java/src/IceGridGUI/Application/Root.java
+++ b/java/src/IceGridGUI/Application/Root.java
@@ -32,19 +32,19 @@ public class Root extends ListTreeNode
// Construct a normal, existing Application
//
public Root(Coordinator coordinator, ApplicationDescriptor desc,
- boolean live, File file) throws UpdateFailedException
+ boolean live, File file) throws UpdateFailedException
{
- super(false, null, desc.name);
- _coordinator = coordinator;
- _traceSaveToRegistry = coordinator.traceSaveToRegistry();
+ super(false, null, desc.name);
+ _coordinator = coordinator;
+ _traceSaveToRegistry = coordinator.traceSaveToRegistry();
- _descriptor = desc;
+ _descriptor = desc;
- _file = file;
- _live = live;
+ _file = file;
+ _live = live;
- init();
+ init();
}
//
@@ -52,144 +52,144 @@ public class Root extends ListTreeNode
//
public Root(Coordinator coordinator, ApplicationDescriptor desc)
{
- super(true, null, desc.name);
- _coordinator = coordinator;
- _traceSaveToRegistry = coordinator.traceSaveToRegistry();
- _descriptor = desc;
-
- _file = null;
- _live = false;
-
- try
- {
- init();
- }
- catch(UpdateFailedException e)
- {
- //
- // Impossible
- //
- assert false;
- }
+ super(true, null, desc.name);
+ _coordinator = coordinator;
+ _traceSaveToRegistry = coordinator.traceSaveToRegistry();
+ _descriptor = desc;
+
+ _file = null;
+ _live = false;
+
+ try
+ {
+ init();
+ }
+ catch(UpdateFailedException e)
+ {
+ //
+ // Impossible
+ //
+ assert false;
+ }
}
private void init() throws UpdateFailedException
{
- _resolver = new Utils.Resolver(_descriptor.variables);
- _resolver.put("application", _descriptor.name);
+ _resolver = new Utils.Resolver(_descriptor.variables);
+ _resolver.put("application", _descriptor.name);
- _origVariables = _descriptor.variables;
- _origDescription = _descriptor.description;
- _origDistrib = (DistributionDescriptor)_descriptor.distrib.clone();
+ _origVariables = _descriptor.variables;
+ _origDescription = _descriptor.description;
+ _origDistrib = (DistributionDescriptor)_descriptor.distrib.clone();
- _propertySets = new PropertySets(this, _descriptor.propertySets);
- _replicaGroups = new ReplicaGroups(this, _descriptor.replicaGroups);
- _serviceTemplates = new ServiceTemplates(this, _descriptor.serviceTemplates);
- _serverTemplates = new ServerTemplates(this, _descriptor.serverTemplates);
- _nodes = new Nodes(this, _descriptor.nodes);
+ _propertySets = new PropertySets(this, _descriptor.propertySets);
+ _replicaGroups = new ReplicaGroups(this, _descriptor.replicaGroups);
+ _serviceTemplates = new ServiceTemplates(this, _descriptor.serviceTemplates);
+ _serverTemplates = new ServerTemplates(this, _descriptor.serverTemplates);
+ _nodes = new Nodes(this, _descriptor.nodes);
- _children.add(_nodes);
- _children.add(_propertySets);
- _children.add(_replicaGroups);
- _children.add(_serverTemplates);
- _children.add(_serviceTemplates);
+ _children.add(_nodes);
+ _children.add(_propertySets);
+ _children.add(_replicaGroups);
+ _children.add(_serverTemplates);
+ _children.add(_serviceTemplates);
- _tree = new JTree(this, true);
- _treeModel = (DefaultTreeModel)_tree.getModel();
+ _tree = new JTree(this, true);
+ _treeModel = (DefaultTreeModel)_tree.getModel();
- //
- // Rebind "copy" and "paste"
- //
- javax.swing.ActionMap am = _tree.getActionMap();
- am.put("copy", _coordinator.getActionsForMenu().get(COPY));
- am.put("paste", _coordinator.getActionsForMenu().get(PASTE));
+ //
+ // Rebind "copy" and "paste"
+ //
+ javax.swing.ActionMap am = _tree.getActionMap();
+ am.put("copy", _coordinator.getActionsForMenu().get(COPY));
+ am.put("paste", _coordinator.getActionsForMenu().get(PASTE));
}
static public ApplicationDescriptor
copyDescriptor(ApplicationDescriptor ad)
{
- ApplicationDescriptor copy = (ApplicationDescriptor)ad.clone();
-
- copy.propertySets = PropertySets.copyDescriptors(copy.propertySets);
+ ApplicationDescriptor copy = (ApplicationDescriptor)ad.clone();
+
+ copy.propertySets = PropertySets.copyDescriptors(copy.propertySets);
- copy.replicaGroups =
- ReplicaGroups.copyDescriptors(copy.replicaGroups);
-
- copy.serverTemplates =
- ServerTemplates.copyDescriptors(copy.serverTemplates);
-
- copy.serviceTemplates =
- ServiceTemplates.copyDescriptors(copy.serviceTemplates);
-
- copy.nodes = Nodes.copyDescriptors(copy.nodes);
+ copy.replicaGroups =
+ ReplicaGroups.copyDescriptors(copy.replicaGroups);
+
+ copy.serverTemplates =
+ ServerTemplates.copyDescriptors(copy.serverTemplates);
+
+ copy.serviceTemplates =
+ ServiceTemplates.copyDescriptors(copy.serviceTemplates);
+
+ copy.nodes = Nodes.copyDescriptors(copy.nodes);
- copy.distrib = (DistributionDescriptor)copy.distrib.clone();
- return copy;
+ copy.distrib = (DistributionDescriptor)copy.distrib.clone();
+ return copy;
}
public Editor getEditor()
{
- if(_editor == null)
- {
- _editor = (ApplicationEditor)
- getEditor(ApplicationEditor.class, this);
- }
- _editor.show(this);
- return _editor;
+ if(_editor == null)
+ {
+ _editor = (ApplicationEditor)
+ getEditor(ApplicationEditor.class, this);
+ }
+ _editor.show(this);
+ return _editor;
}
protected Editor createEditor()
{
- return new ApplicationEditor();
+ return new ApplicationEditor();
}
public TreeNode findNodeLike(TreePath path, boolean exactMatch)
{
- TreeNode result = null;
- if(path == null)
- {
- return null;
- }
-
- for(int i = 0; i < path.getPathCount(); ++i)
- {
- TreeNode node = (TreeNode)path.getPathComponent(i);
-
- if(result == null)
- {
- if(node.getId().equals(_id))
- {
- result = this;
- }
- else
- {
- return null;
- }
- }
- else
- {
- TreeNode newNode = result.findChildLike(node);
- if(newNode == null)
- {
- if(exactMatch)
- {
- return null;
- }
- else
- {
- return result;
- }
- }
- else
- {
- result = newNode;
- }
- }
- }
-
- return result;
+ TreeNode result = null;
+ if(path == null)
+ {
+ return null;
+ }
+
+ for(int i = 0; i < path.getPathCount(); ++i)
+ {
+ TreeNode node = (TreeNode)path.getPathComponent(i);
+
+ if(result == null)
+ {
+ if(node.getId().equals(_id))
+ {
+ result = this;
+ }
+ else
+ {
+ return null;
+ }
+ }
+ else
+ {
+ TreeNode newNode = result.findChildLike(node);
+ if(newNode == null)
+ {
+ if(exactMatch)
+ {
+ return null;
+ }
+ else
+ {
+ return result;
+ }
+ }
+ else
+ {
+ result = newNode;
+ }
+ }
+ }
+
+ return result;
}
//
@@ -197,1091 +197,1091 @@ public class Root extends ListTreeNode
//
public boolean hasNode(TreeNode node)
{
- while(node != this)
- {
- TreeNode parent = (TreeNode)node.getParent();
- if(parent == null || parent.getIndex(node) == -1)
- {
- return false;
- }
- else
- {
- node = parent;
- }
- }
- return true;
+ while(node != this)
+ {
+ TreeNode parent = (TreeNode)node.getParent();
+ if(parent == null || parent.getIndex(node) == -1)
+ {
+ return false;
+ }
+ else
+ {
+ node = parent;
+ }
+ }
+ return true;
}
public void setSelectedNode(TreeNode node)
{
- _tree.setSelectionPath(node.getPath());
+ _tree.setSelectionPath(node.getPath());
}
public TreeNode getSelectedNode()
{
- TreePath path = _tree.getSelectionPath();
- if(path == null)
- {
- return null;
- }
- else
- {
- return (TreeNode)path.getLastPathComponent();
- }
+ TreePath path = _tree.getSelectionPath();
+ if(path == null)
+ {
+ return null;
+ }
+ else
+ {
+ return (TreeNode)path.getLastPathComponent();
+ }
}
public void selectServer(String nodeName, String serverId)
{
- TreeNode target = _nodes;
- if(target != null)
- {
- Node node = (Node)target.findChild(nodeName);
- if(node != null)
- {
- target = node;
- Server server = node.findServer(serverId);
- if(server != null)
- {
- target = (TreeNode)server;
- }
- }
- setSelectedNode(target);
- }
+ TreeNode target = _nodes;
+ if(target != null)
+ {
+ Node node = (Node)target.findChild(nodeName);
+ if(node != null)
+ {
+ target = node;
+ Server server = node.findServer(serverId);
+ if(server != null)
+ {
+ target = (TreeNode)server;
+ }
+ }
+ setSelectedNode(target);
+ }
}
public Component getTreeCellRendererComponent(
- JTree tree,
- Object value,
- boolean sel,
- boolean expanded,
- boolean leaf,
- int row,
- boolean hasFocus)
- {
- if(_cellRenderer == null)
- {
- _cellRenderer = new DefaultTreeCellRenderer();
- _cellRenderer.setOpenIcon(
- Utils.getIcon("/icons/16x16/application_open.png"));
- _cellRenderer.setClosedIcon(
- Utils.getIcon("/icons/16x16/application_closed.png"));
- }
-
- return _cellRenderer.getTreeCellRendererComponent(
- tree, value, sel, expanded, leaf, row, hasFocus);
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
+ {
+ if(_cellRenderer == null)
+ {
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _cellRenderer.setOpenIcon(
+ Utils.getIcon("/icons/16x16/application_open.png"));
+ _cellRenderer.setClosedIcon(
+ Utils.getIcon("/icons/16x16/application_closed.png"));
+ }
+
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
}
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
+ boolean[] actions = new boolean[ACTION_COUNT];
- actions[COPY] = true;
- actions[DELETE] = true;
+ actions[COPY] = true;
+ actions[DELETE] = true;
- Object descriptor = _coordinator.getClipboard();
- if(descriptor != null)
- {
- actions[PASTE] = descriptor instanceof ApplicationDescriptor;
- }
+ Object descriptor = _coordinator.getClipboard();
+ if(descriptor != null)
+ {
+ actions[PASTE] = descriptor instanceof ApplicationDescriptor;
+ }
- actions[SHOW_VARS] = true;
- actions[SUBSTITUTE_VARS] = true;
- actions[NEW_NODE] = true;
- actions[NEW_PROPERTY_SET] = true;
- actions[NEW_REPLICA_GROUP] = true;
- actions[NEW_TEMPLATE_SERVER] = true;
- actions[NEW_TEMPLATE_SERVER_ICEBOX] = true;
- actions[NEW_TEMPLATE_SERVICE] = true;
+ actions[SHOW_VARS] = true;
+ actions[SUBSTITUTE_VARS] = true;
+ actions[NEW_NODE] = true;
+ actions[NEW_PROPERTY_SET] = true;
+ actions[NEW_REPLICA_GROUP] = true;
+ actions[NEW_TEMPLATE_SERVER] = true;
+ actions[NEW_TEMPLATE_SERVER_ICEBOX] = true;
+ actions[NEW_TEMPLATE_SERVICE] = true;
- return actions;
+ return actions;
}
public JPopupMenu getPopupMenu()
{
- ApplicationActions actions = _coordinator.getActionsForPopup();
- if(_popup == null)
- {
- _popup = new JPopupMenu();
- _popup.add(actions.get(NEW_NODE));
- _popup.add(actions.get(NEW_PROPERTY_SET));
- _popup.add(actions.get(NEW_REPLICA_GROUP));
- _popup.addSeparator();
- _popup.add(actions.get(NEW_TEMPLATE_SERVER));
- _popup.add(actions.get(NEW_TEMPLATE_SERVER_ICEBOX));
- _popup.addSeparator();
- _popup.add(actions.get(NEW_TEMPLATE_SERVICE));
- }
- actions.setTarget(this);
- return _popup;
+ ApplicationActions actions = _coordinator.getActionsForPopup();
+ if(_popup == null)
+ {
+ _popup = new JPopupMenu();
+ _popup.add(actions.get(NEW_NODE));
+ _popup.add(actions.get(NEW_PROPERTY_SET));
+ _popup.add(actions.get(NEW_REPLICA_GROUP));
+ _popup.addSeparator();
+ _popup.add(actions.get(NEW_TEMPLATE_SERVER));
+ _popup.add(actions.get(NEW_TEMPLATE_SERVER_ICEBOX));
+ _popup.addSeparator();
+ _popup.add(actions.get(NEW_TEMPLATE_SERVICE));
+ }
+ actions.setTarget(this);
+ return _popup;
}
public void copy()
{
- _coordinator.setClipboard(copyDescriptor(_descriptor));
- _coordinator.getActionsForMenu().get(PASTE).setEnabled(true);
+ _coordinator.setClipboard(copyDescriptor(_descriptor));
+ _coordinator.getActionsForMenu().get(PASTE).setEnabled(true);
}
public void paste()
{
- _coordinator.pasteApplication();
+ _coordinator.pasteApplication();
}
public void newNode()
{
- _nodes.newNode();
+ _nodes.newNode();
}
public void newPropertySet()
{
- _propertySets.newPropertySet();
+ _propertySets.newPropertySet();
}
public void newReplicaGroup()
{
- _replicaGroups.newReplicaGroup();
+ _replicaGroups.newReplicaGroup();
}
public void newTemplateServer()
{
- _serverTemplates.newTemplateServer();
+ _serverTemplates.newTemplateServer();
}
public void newTemplateServerIceBox()
{
- _serverTemplates.newTemplateServerIceBox();
+ _serverTemplates.newTemplateServerIceBox();
}
public void newTemplateService()
{
- _serviceTemplates.newTemplateService();
+ _serviceTemplates.newTemplateService();
}
public void save()
{
- if(_live)
- {
- saveToRegistry();
- }
- else if(_file != null)
- {
- File file = _coordinator.saveToFile(false, this, _file);
- if(file != null)
- {
- _file = file;
- commit();
- _coordinator.getSaveAction().setEnabled(false);
- _coordinator.getDiscardUpdatesAction().setEnabled(false);
- }
- }
- else
- {
- assert false;
- }
+ if(_live)
+ {
+ saveToRegistry();
+ }
+ else if(_file != null)
+ {
+ File file = _coordinator.saveToFile(false, this, _file);
+ if(file != null)
+ {
+ _file = file;
+ commit();
+ _coordinator.getSaveAction().setEnabled(false);
+ _coordinator.getDiscardUpdatesAction().setEnabled(false);
+ }
+ }
+ else
+ {
+ assert false;
+ }
}
public void saveToRegistry()
{
- //
- // To be run in GUI thread when exclusive write access is acquired
- //
- Runnable runnable = new Runnable()
- {
- private void release()
- {
- _coordinator.releaseExclusiveWriteAccess();
- _coordinator.getMainFrame().setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
- }
-
- private void handleFailure(String prefix, String title, String message)
- {
- release();
-
- if(isSelected())
- {
- _coordinator.getSaveAction().setEnabled(isLive() && _coordinator.connectedToMaster() || hasFile());
- _coordinator.getSaveToRegistryAction().setEnabled(true);
- _coordinator.getDiscardUpdatesAction().setEnabled(true);
- }
-
- _coordinator.getStatusBar().setText(prefix + "failed!");
-
- JOptionPane.showMessageDialog(
- _coordinator.getMainFrame(),
- message,
- title,
- JOptionPane.ERROR_MESSAGE);
- }
-
-
- public void run()
- {
- _coordinator.getMainFrame().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
- boolean asyncRelease = false;
-
- try
- {
- if(_live && _canUseUpdateDescriptor)
- {
- ApplicationUpdateDescriptor updateDescriptor = createUpdateDescriptor();
- if(updateDescriptor != null)
- {
- final String prefix = "Updating application '" + _id + "'...";
- _coordinator.getStatusBar().setText(prefix);
-
- AMI_Admin_updateApplication cb = new AMI_Admin_updateApplication()
- {
- public void ice_response()
- {
- if(_traceSaveToRegistry)
- {
- _coordinator.traceSaveToRegistry("updateApplication for application " + _id + ": success");
- }
-
- SwingUtilities.invokeLater(new Runnable()
- {
- public void run()
- {
- commit();
- release();
- _coordinator.getStatusBar().setText(prefix + "done.");
- }
- });
- }
-
- public void ice_exception(final Ice.UserException e)
- {
- if(_traceSaveToRegistry)
- {
- _coordinator.traceSaveToRegistry("updateApplication for application " + _id + ": failed");
- }
-
- SwingUtilities.invokeLater(new Runnable()
- {
- public void run()
- {
- _skipUpdates--;
- handleFailure(prefix, "Update failed",
- "IceGrid exception: " + e.toString());
- }
-
- });
- }
-
- public void ice_exception(final Ice.LocalException e)
- {
- if(_traceSaveToRegistry)
- {
- _coordinator.traceSaveToRegistry("updateApplication for application " + _id + ": failed");
- }
-
- SwingUtilities.invokeLater(new Runnable()
- {
- public void run()
- {
- _skipUpdates--;
- handleFailure(prefix, "Update failed",
- "Communication exception: " + e.toString());
- }
- });
- }
-
- };
-
- if(_traceSaveToRegistry)
- {
- _coordinator.traceSaveToRegistry("sending updateApplication for application " + _id);
- }
-
- _coordinator.getAdmin().updateApplication_async(cb, updateDescriptor);
- asyncRelease = true;
-
- //
- // If updateApplication fails, we know we can't get other updates
- // since we have exclusive write access
- //
- _skipUpdates++;
- }
- else
- {
- final String prefix = "Application '" + _id + "' is already up-to-date";
- _coordinator.getStatusBar().setText(prefix);
- commit();
- }
- }
- else
- {
- //
- // Add or sync application
- //
- if(_coordinator.getLiveDeploymentRoot().getApplicationDescriptor(_id) == null)
- {
- assert _live == false;
-
-
- final String prefix = "Adding application '" + _id + "'...";
- _coordinator.getStatusBar().setText(prefix);
-
- AMI_Admin_addApplication cb = new AMI_Admin_addApplication()
- {
- public void ice_response()
- {
- if(_traceSaveToRegistry)
- {
- _coordinator.traceSaveToRegistry("addApplication for application " + _id + ": success");
- }
-
- SwingUtilities.invokeLater(new Runnable()
- {
- public void run()
- {
- commit();
- liveReset();
- _coordinator.addLiveApplication(Root.this);
- release();
- _coordinator.getStatusBar().setText(prefix + "done.");
- }
- });
- }
-
- public void ice_exception(final Ice.UserException e)
- {
- if(_traceSaveToRegistry)
- {
- _coordinator.traceSaveToRegistry("addApplication for application " + _id + ": failed");
- }
-
- SwingUtilities.invokeLater(new Runnable()
- {
- public void run()
- {
- handleFailure(prefix, "Add failed",
- "IceGrid exception: " + e.toString());
- }
-
- });
- }
-
- public void ice_exception(final Ice.LocalException e)
- {
- if(_traceSaveToRegistry)
- {
- _coordinator.traceSaveToRegistry("addApplication for application " + _id + ": failed");
- }
-
- SwingUtilities.invokeLater(new Runnable()
- {
- public void run()
- {
- handleFailure(prefix, "Add failed",
- "Communication exception: " + e.toString());
- }
- });
- }
-
- };
-
- if(_traceSaveToRegistry)
- {
- _coordinator.traceSaveToRegistry("sending addApplication for application " + _id);
- }
-
- _coordinator.getAdmin().addApplication_async(cb, _descriptor);
- asyncRelease = true;
- }
- else
- {
- final String prefix = "Synchronizing application '" + _id + "'...";
- _coordinator.getStatusBar().setText(prefix);
-
- AMI_Admin_syncApplication cb = new AMI_Admin_syncApplication()
- {
- public void ice_response()
- {
- if(_traceSaveToRegistry)
- {
- _coordinator.traceSaveToRegistry("syncApplication for application " + _id + ": failed");
- }
-
- SwingUtilities.invokeLater(new Runnable()
- {
- public void run()
- {
- commit();
- if(!_live)
- {
- //
- // Make this tab live or close it if there is one already open
- //
- ApplicationPane app = _coordinator.getLiveApplication(_id);
- if(app == null)
- {
- liveReset();
- _coordinator.addLiveApplication(Root.this);
- }
- else
- {
- boolean selected = isSelected();
- _coordinator.getMainPane().removeApplication(Root.this);
- if(selected)
- {
- _coordinator.getMainPane().setSelectedComponent(app);
- }
- }
- }
-
- release();
- _coordinator.getStatusBar().setText(prefix + "done.");
- }
- });
- }
-
- public void ice_exception(final Ice.UserException e)
- {
- if(_traceSaveToRegistry)
- {
- _coordinator.traceSaveToRegistry("syncApplication for application " + _id + ": failed");
- }
-
- SwingUtilities.invokeLater(new Runnable()
- {
- public void run()
- {
- if(_live)
- {
- _skipUpdates--;
- }
-
- handleFailure(prefix, "Sync failed",
- "IceGrid exception: " + e.toString());
- }
-
- });
- }
-
- public void ice_exception(final Ice.LocalException e)
- {
- if(_traceSaveToRegistry)
- {
- _coordinator.traceSaveToRegistry("syncApplication for application " + _id + ": failed");
- }
-
- SwingUtilities.invokeLater(new Runnable()
- {
- public void run()
- {
- if(_live)
- {
- _skipUpdates--;
- }
-
- handleFailure(prefix, "Sync failed",
- "Communication exception: " + e.toString());
- }
- });
- }
-
- };
-
- if(_traceSaveToRegistry)
- {
- _coordinator.traceSaveToRegistry("sending syncApplication for application " + _id);
- }
-
- _coordinator.getAdmin().syncApplication_async(cb, _descriptor);
- asyncRelease = true;
- if(_live)
- {
- _skipUpdates++;
- }
- }
- }
- if(isSelected())
- {
- _coordinator.getSaveAction().setEnabled(false);
- _coordinator.getSaveToRegistryAction().setEnabled(false);
- _coordinator.getDiscardUpdatesAction().setEnabled(false);
- }
- }
- catch(Ice.LocalException e)
- {
- if(_traceSaveToRegistry)
- {
- _coordinator.traceSaveToRegistry("Ice communications exception while saving application " + _id);
- }
-
- JOptionPane.showMessageDialog(
- _coordinator.getMainFrame(),
- e.toString(),
- "Communication Exception",
- JOptionPane.ERROR_MESSAGE);
- }
- finally
- {
- if(!asyncRelease)
- {
- _coordinator.getMainFrame().setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
- _coordinator.releaseExclusiveWriteAccess();
- }
- }
- }
- };
-
- try
- {
- _coordinator.acquireExclusiveWriteAccess(runnable);
- }
- catch(AccessDeniedException e)
- {
- _coordinator.accessDenied(e);
- }
- catch(Ice.LocalException e)
- {
- JOptionPane.showMessageDialog(
- _coordinator.getMainFrame(),
- e.toString(),
- "Communication Exception",
- JOptionPane.ERROR_MESSAGE);
- }
+ //
+ // To be run in GUI thread when exclusive write access is acquired
+ //
+ Runnable runnable = new Runnable()
+ {
+ private void release()
+ {
+ _coordinator.releaseExclusiveWriteAccess();
+ _coordinator.getMainFrame().setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
+ }
+
+ private void handleFailure(String prefix, String title, String message)
+ {
+ release();
+
+ if(isSelected())
+ {
+ _coordinator.getSaveAction().setEnabled(isLive() && _coordinator.connectedToMaster() || hasFile());
+ _coordinator.getSaveToRegistryAction().setEnabled(true);
+ _coordinator.getDiscardUpdatesAction().setEnabled(true);
+ }
+
+ _coordinator.getStatusBar().setText(prefix + "failed!");
+
+ JOptionPane.showMessageDialog(
+ _coordinator.getMainFrame(),
+ message,
+ title,
+ JOptionPane.ERROR_MESSAGE);
+ }
+
+
+ public void run()
+ {
+ _coordinator.getMainFrame().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
+ boolean asyncRelease = false;
+
+ try
+ {
+ if(_live && _canUseUpdateDescriptor)
+ {
+ ApplicationUpdateDescriptor updateDescriptor = createUpdateDescriptor();
+ if(updateDescriptor != null)
+ {
+ final String prefix = "Updating application '" + _id + "'...";
+ _coordinator.getStatusBar().setText(prefix);
+
+ AMI_Admin_updateApplication cb = new AMI_Admin_updateApplication()
+ {
+ public void ice_response()
+ {
+ if(_traceSaveToRegistry)
+ {
+ _coordinator.traceSaveToRegistry("updateApplication for application " + _id + ": success");
+ }
+
+ SwingUtilities.invokeLater(new Runnable()
+ {
+ public void run()
+ {
+ commit();
+ release();
+ _coordinator.getStatusBar().setText(prefix + "done.");
+ }
+ });
+ }
+
+ public void ice_exception(final Ice.UserException e)
+ {
+ if(_traceSaveToRegistry)
+ {
+ _coordinator.traceSaveToRegistry("updateApplication for application " + _id + ": failed");
+ }
+
+ SwingUtilities.invokeLater(new Runnable()
+ {
+ public void run()
+ {
+ _skipUpdates--;
+ handleFailure(prefix, "Update failed",
+ "IceGrid exception: " + e.toString());
+ }
+
+ });
+ }
+
+ public void ice_exception(final Ice.LocalException e)
+ {
+ if(_traceSaveToRegistry)
+ {
+ _coordinator.traceSaveToRegistry("updateApplication for application " + _id + ": failed");
+ }
+
+ SwingUtilities.invokeLater(new Runnable()
+ {
+ public void run()
+ {
+ _skipUpdates--;
+ handleFailure(prefix, "Update failed",
+ "Communication exception: " + e.toString());
+ }
+ });
+ }
+
+ };
+
+ if(_traceSaveToRegistry)
+ {
+ _coordinator.traceSaveToRegistry("sending updateApplication for application " + _id);
+ }
+
+ _coordinator.getAdmin().updateApplication_async(cb, updateDescriptor);
+ asyncRelease = true;
+
+ //
+ // If updateApplication fails, we know we can't get other updates
+ // since we have exclusive write access
+ //
+ _skipUpdates++;
+ }
+ else
+ {
+ final String prefix = "Application '" + _id + "' is already up-to-date";
+ _coordinator.getStatusBar().setText(prefix);
+ commit();
+ }
+ }
+ else
+ {
+ //
+ // Add or sync application
+ //
+ if(_coordinator.getLiveDeploymentRoot().getApplicationDescriptor(_id) == null)
+ {
+ assert _live == false;
+
+
+ final String prefix = "Adding application '" + _id + "'...";
+ _coordinator.getStatusBar().setText(prefix);
+
+ AMI_Admin_addApplication cb = new AMI_Admin_addApplication()
+ {
+ public void ice_response()
+ {
+ if(_traceSaveToRegistry)
+ {
+ _coordinator.traceSaveToRegistry("addApplication for application " + _id + ": success");
+ }
+
+ SwingUtilities.invokeLater(new Runnable()
+ {
+ public void run()
+ {
+ commit();
+ liveReset();
+ _coordinator.addLiveApplication(Root.this);
+ release();
+ _coordinator.getStatusBar().setText(prefix + "done.");
+ }
+ });
+ }
+
+ public void ice_exception(final Ice.UserException e)
+ {
+ if(_traceSaveToRegistry)
+ {
+ _coordinator.traceSaveToRegistry("addApplication for application " + _id + ": failed");
+ }
+
+ SwingUtilities.invokeLater(new Runnable()
+ {
+ public void run()
+ {
+ handleFailure(prefix, "Add failed",
+ "IceGrid exception: " + e.toString());
+ }
+
+ });
+ }
+
+ public void ice_exception(final Ice.LocalException e)
+ {
+ if(_traceSaveToRegistry)
+ {
+ _coordinator.traceSaveToRegistry("addApplication for application " + _id + ": failed");
+ }
+
+ SwingUtilities.invokeLater(new Runnable()
+ {
+ public void run()
+ {
+ handleFailure(prefix, "Add failed",
+ "Communication exception: " + e.toString());
+ }
+ });
+ }
+
+ };
+
+ if(_traceSaveToRegistry)
+ {
+ _coordinator.traceSaveToRegistry("sending addApplication for application " + _id);
+ }
+
+ _coordinator.getAdmin().addApplication_async(cb, _descriptor);
+ asyncRelease = true;
+ }
+ else
+ {
+ final String prefix = "Synchronizing application '" + _id + "'...";
+ _coordinator.getStatusBar().setText(prefix);
+
+ AMI_Admin_syncApplication cb = new AMI_Admin_syncApplication()
+ {
+ public void ice_response()
+ {
+ if(_traceSaveToRegistry)
+ {
+ _coordinator.traceSaveToRegistry("syncApplication for application " + _id + ": failed");
+ }
+
+ SwingUtilities.invokeLater(new Runnable()
+ {
+ public void run()
+ {
+ commit();
+ if(!_live)
+ {
+ //
+ // Make this tab live or close it if there is one already open
+ //
+ ApplicationPane app = _coordinator.getLiveApplication(_id);
+ if(app == null)
+ {
+ liveReset();
+ _coordinator.addLiveApplication(Root.this);
+ }
+ else
+ {
+ boolean selected = isSelected();
+ _coordinator.getMainPane().removeApplication(Root.this);
+ if(selected)
+ {
+ _coordinator.getMainPane().setSelectedComponent(app);
+ }
+ }
+ }
+
+ release();
+ _coordinator.getStatusBar().setText(prefix + "done.");
+ }
+ });
+ }
+
+ public void ice_exception(final Ice.UserException e)
+ {
+ if(_traceSaveToRegistry)
+ {
+ _coordinator.traceSaveToRegistry("syncApplication for application " + _id + ": failed");
+ }
+
+ SwingUtilities.invokeLater(new Runnable()
+ {
+ public void run()
+ {
+ if(_live)
+ {
+ _skipUpdates--;
+ }
+
+ handleFailure(prefix, "Sync failed",
+ "IceGrid exception: " + e.toString());
+ }
+
+ });
+ }
+
+ public void ice_exception(final Ice.LocalException e)
+ {
+ if(_traceSaveToRegistry)
+ {
+ _coordinator.traceSaveToRegistry("syncApplication for application " + _id + ": failed");
+ }
+
+ SwingUtilities.invokeLater(new Runnable()
+ {
+ public void run()
+ {
+ if(_live)
+ {
+ _skipUpdates--;
+ }
+
+ handleFailure(prefix, "Sync failed",
+ "Communication exception: " + e.toString());
+ }
+ });
+ }
+
+ };
+
+ if(_traceSaveToRegistry)
+ {
+ _coordinator.traceSaveToRegistry("sending syncApplication for application " + _id);
+ }
+
+ _coordinator.getAdmin().syncApplication_async(cb, _descriptor);
+ asyncRelease = true;
+ if(_live)
+ {
+ _skipUpdates++;
+ }
+ }
+ }
+ if(isSelected())
+ {
+ _coordinator.getSaveAction().setEnabled(false);
+ _coordinator.getSaveToRegistryAction().setEnabled(false);
+ _coordinator.getDiscardUpdatesAction().setEnabled(false);
+ }
+ }
+ catch(Ice.LocalException e)
+ {
+ if(_traceSaveToRegistry)
+ {
+ _coordinator.traceSaveToRegistry("Ice communications exception while saving application " + _id);
+ }
+
+ JOptionPane.showMessageDialog(
+ _coordinator.getMainFrame(),
+ e.toString(),
+ "Communication Exception",
+ JOptionPane.ERROR_MESSAGE);
+ }
+ finally
+ {
+ if(!asyncRelease)
+ {
+ _coordinator.getMainFrame().setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
+ _coordinator.releaseExclusiveWriteAccess();
+ }
+ }
+ }
+ };
+
+ try
+ {
+ _coordinator.acquireExclusiveWriteAccess(runnable);
+ }
+ catch(AccessDeniedException e)
+ {
+ _coordinator.accessDenied(e);
+ }
+ catch(Ice.LocalException e)
+ {
+ JOptionPane.showMessageDialog(
+ _coordinator.getMainFrame(),
+ e.toString(),
+ "Communication Exception",
+ JOptionPane.ERROR_MESSAGE);
+ }
}
public void saveToFile()
{
- File file = _coordinator.saveToFile(true, this, _file);
- if(file != null)
- {
- _file = file;
- _live = false;
+ File file = _coordinator.saveToFile(true, this, _file);
+ if(file != null)
+ {
+ _file = file;
+ _live = false;
- _coordinator.removeLiveApplication(_id);
- _coordinator.getMainPane().resetIcon(this);
+ _coordinator.removeLiveApplication(_id);
+ _coordinator.getMainPane().resetIcon(this);
- commit();
- _coordinator.getSaveAction().setEnabled(false);
- _coordinator.getDiscardUpdatesAction().setEnabled(false);
- _coordinator.getSaveToRegistryAction().setEnabled(_coordinator.connectedToMaster());
- }
+ commit();
+ _coordinator.getSaveAction().setEnabled(false);
+ _coordinator.getDiscardUpdatesAction().setEnabled(false);
+ _coordinator.getSaveToRegistryAction().setEnabled(_coordinator.connectedToMaster());
+ }
}
public void discardUpdates()
{
- ApplicationDescriptor desc = null;
-
- if(_live)
- {
- desc = _coordinator.getLiveDeploymentRoot().getApplicationDescriptor(_id);
- assert desc != null;
- desc = IceGridGUI.Application.Root.copyDescriptor(desc);
- }
- else if(_file != null)
- {
- desc = _coordinator.parseFile(_file);
- if(desc == null)
- {
- return;
- }
- }
- else
- {
- assert false;
- }
-
- Root newRoot;
-
- try
- {
- newRoot = new Root(_coordinator, desc, _live, _file);
- }
- catch(UpdateFailedException e)
- {
- JOptionPane.showMessageDialog(
- _coordinator.getMainFrame(),
- e.toString(),
- "Bad Application Descriptor: Unable reload Application",
- JOptionPane.ERROR_MESSAGE);
- return;
- }
-
- ApplicationPane app = _coordinator.getMainPane().findApplication(this);
- assert app != null;
- app.setRoot(newRoot);
-
- TreeNode node = newRoot.findNodeLike(_tree.getSelectionPath(), false);
- if(node == null)
- {
- newRoot.setSelectedNode(newRoot);
- }
- else
- {
- newRoot.setSelectedNode(node);
- }
- _coordinator.getCurrentTab().selected();
+ ApplicationDescriptor desc = null;
+
+ if(_live)
+ {
+ desc = _coordinator.getLiveDeploymentRoot().getApplicationDescriptor(_id);
+ assert desc != null;
+ desc = IceGridGUI.Application.Root.copyDescriptor(desc);
+ }
+ else if(_file != null)
+ {
+ desc = _coordinator.parseFile(_file);
+ if(desc == null)
+ {
+ return;
+ }
+ }
+ else
+ {
+ assert false;
+ }
+
+ Root newRoot;
+
+ try
+ {
+ newRoot = new Root(_coordinator, desc, _live, _file);
+ }
+ catch(UpdateFailedException e)
+ {
+ JOptionPane.showMessageDialog(
+ _coordinator.getMainFrame(),
+ e.toString(),
+ "Bad Application Descriptor: Unable reload Application",
+ JOptionPane.ERROR_MESSAGE);
+ return;
+ }
+
+ ApplicationPane app = _coordinator.getMainPane().findApplication(this);
+ assert app != null;
+ app.setRoot(newRoot);
+
+ TreeNode node = newRoot.findNodeLike(_tree.getSelectionPath(), false);
+ if(node == null)
+ {
+ newRoot.setSelectedNode(newRoot);
+ }
+ else
+ {
+ newRoot.setSelectedNode(node);
+ }
+ _coordinator.getCurrentTab().selected();
}
private void liveReset()
{
- _live = true;
- _skipUpdates = 0;
- _file = null;
- _coordinator.getMainPane().resetIcon(this);
+ _live = true;
+ _skipUpdates = 0;
+ _file = null;
+ _coordinator.getMainPane().resetIcon(this);
}
private ApplicationUpdateDescriptor createUpdateDescriptor()
{
- ApplicationUpdateDescriptor update = new ApplicationUpdateDescriptor();
- update.name = _descriptor.name;
- if(_editable.isModified())
- {
- //
- // Diff description
- //
- if(!_descriptor.description.equals(_origDescription))
- {
- update.description =
- new IceGrid.BoxedString(_descriptor.description);
- }
-
- //
- // Diff variables
- //
- update.variables = new java.util.TreeMap(_descriptor.variables);
- java.util.List removeVariables = new java.util.LinkedList();
-
- java.util.Iterator p = _origVariables.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- Object key = entry.getKey();
- Object newValue = update.variables.get(key);
- if(newValue == null)
- {
- removeVariables.add(key);
- }
- else
- {
- Object value = entry.getValue();
- if(newValue.equals(value))
- {
- update.variables.remove(key);
- }
- }
- }
- update.removeVariables = (String[])removeVariables.toArray(new String[0]);
-
- //
- // Diff distribution
- //
- if(!_descriptor.distrib.equals(_origDistrib))
- {
- update.distrib = new IceGrid.BoxedDistributionDescriptor(
- _descriptor.distrib);
- }
- }
- else
- {
- update.variables = new java.util.TreeMap();
- update.removeVariables = new String[0];
- }
-
- //
- // Property sets
- //
- update.removePropertySets = _propertySets.getEditable().
- removedElements(PropertySet.class);
- update.propertySets = _propertySets.getUpdates();
-
- //
- // Replica Groups
- //
- update.removeReplicaGroups = _replicaGroups.getEditable().
- removedElements(ReplicaGroup.class);
- update.replicaGroups = _replicaGroups.getUpdates();
-
- //
- // Server Templates
- //
- update.removeServerTemplates = _serverTemplates.getEditable().
- removedElements(ServerTemplate.class);
- update.serverTemplates = _serverTemplates.getUpdates();
-
- //
- // Service Templates
- //
- update.removeServiceTemplates = _serviceTemplates.getEditable().
- removedElements(ServiceTemplate.class);
- update.serviceTemplates =_serviceTemplates.getUpdates();
-
- //
- // Nodes
- //
- update.removeNodes = _nodes.getEditable().
- removedElements(Node.class);
- update.nodes = _nodes.getUpdates();
-
-
- //
- // Return null if nothing changed
- //
- if(!_editable.isModified() &&
- update.removePropertySets.length == 0 &&
- update.propertySets.size() == 0 &&
- update.removeReplicaGroups.length == 0 &&
- update.replicaGroups.size() == 0 &&
- update.removeServerTemplates.length == 0 &&
- update.serverTemplates.size() == 0 &&
- update.removeServiceTemplates.length == 0 &&
- update.serviceTemplates.size() == 0 &&
- update.removeNodes.length == 0 &&
- update.nodes.size() == 0)
- {
- return null;
- }
- else
- {
- return update;
- }
+ ApplicationUpdateDescriptor update = new ApplicationUpdateDescriptor();
+ update.name = _descriptor.name;
+ if(_editable.isModified())
+ {
+ //
+ // Diff description
+ //
+ if(!_descriptor.description.equals(_origDescription))
+ {
+ update.description =
+ new IceGrid.BoxedString(_descriptor.description);
+ }
+
+ //
+ // Diff variables
+ //
+ update.variables = new java.util.TreeMap(_descriptor.variables);
+ java.util.List removeVariables = new java.util.LinkedList();
+
+ java.util.Iterator p = _origVariables.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ Object key = entry.getKey();
+ Object newValue = update.variables.get(key);
+ if(newValue == null)
+ {
+ removeVariables.add(key);
+ }
+ else
+ {
+ Object value = entry.getValue();
+ if(newValue.equals(value))
+ {
+ update.variables.remove(key);
+ }
+ }
+ }
+ update.removeVariables = (String[])removeVariables.toArray(new String[0]);
+
+ //
+ // Diff distribution
+ //
+ if(!_descriptor.distrib.equals(_origDistrib))
+ {
+ update.distrib = new IceGrid.BoxedDistributionDescriptor(
+ _descriptor.distrib);
+ }
+ }
+ else
+ {
+ update.variables = new java.util.TreeMap();
+ update.removeVariables = new String[0];
+ }
+
+ //
+ // Property sets
+ //
+ update.removePropertySets = _propertySets.getEditable().
+ removedElements(PropertySet.class);
+ update.propertySets = _propertySets.getUpdates();
+
+ //
+ // Replica Groups
+ //
+ update.removeReplicaGroups = _replicaGroups.getEditable().
+ removedElements(ReplicaGroup.class);
+ update.replicaGroups = _replicaGroups.getUpdates();
+
+ //
+ // Server Templates
+ //
+ update.removeServerTemplates = _serverTemplates.getEditable().
+ removedElements(ServerTemplate.class);
+ update.serverTemplates = _serverTemplates.getUpdates();
+
+ //
+ // Service Templates
+ //
+ update.removeServiceTemplates = _serviceTemplates.getEditable().
+ removedElements(ServiceTemplate.class);
+ update.serviceTemplates =_serviceTemplates.getUpdates();
+
+ //
+ // Nodes
+ //
+ update.removeNodes = _nodes.getEditable().
+ removedElements(Node.class);
+ update.nodes = _nodes.getUpdates();
+
+
+ //
+ // Return null if nothing changed
+ //
+ if(!_editable.isModified() &&
+ update.removePropertySets.length == 0 &&
+ update.propertySets.size() == 0 &&
+ update.removeReplicaGroups.length == 0 &&
+ update.replicaGroups.size() == 0 &&
+ update.removeServerTemplates.length == 0 &&
+ update.serverTemplates.size() == 0 &&
+ update.removeServiceTemplates.length == 0 &&
+ update.serviceTemplates.size() == 0 &&
+ update.removeNodes.length == 0 &&
+ update.nodes.size() == 0)
+ {
+ return null;
+ }
+ else
+ {
+ return update;
+ }
}
private void commit()
{
- _updated = false;
- _registryUpdatesEnabled = true;
- _canUseUpdateDescriptor = true;
+ _updated = false;
+ _registryUpdatesEnabled = true;
+ _canUseUpdateDescriptor = true;
- assert _concurrentUpdates.size() == 0;
+ assert _concurrentUpdates.size() == 0;
- _editable.commit();
- _origVariables = _descriptor.variables;
- _origDescription = _descriptor.description;
- _origDistrib = (DistributionDescriptor)_descriptor.distrib.clone();
-
- _nodes.commit();
- _propertySets.commit();
- _replicaGroups.commit();
- _serverTemplates.commit();
- _serviceTemplates.commit();
+ _editable.commit();
+ _origVariables = _descriptor.variables;
+ _origDescription = _descriptor.description;
+ _origDistrib = (DistributionDescriptor)_descriptor.distrib.clone();
+
+ _nodes.commit();
+ _propertySets.commit();
+ _replicaGroups.commit();
+ _serverTemplates.commit();
+ _serviceTemplates.commit();
}
public boolean isEphemeral()
{
- return false;
+ return false;
}
public void destroy()
{
- if(!_live && _file == null)
- {
- _coordinator.getMainPane().removeApplication(this);
- }
- else if(_live)
- {
- int confirm = JOptionPane.showConfirmDialog(
- _coordinator.getMainFrame(),
- "You are about to remove application '" + _id + "' from the IceGrid registry. "
- + "Do you want to proceed?",
- "Remove Confirmation",
- JOptionPane.YES_NO_OPTION);
-
- if(confirm == JOptionPane.YES_OPTION)
- {
- _coordinator.removeApplicationFromRegistry(_id);
- _discardMe = true;
- }
- }
- else
- {
- assert _file != null;
-
- int confirm = JOptionPane.showConfirmDialog(
- _coordinator.getMainFrame(),
- "You are about to remove application '" + _id + "' and its associated file. "
- + "Do you want to proceed?",
- "Remove Confirmation",
- JOptionPane.YES_NO_OPTION);
-
- if(confirm == JOptionPane.YES_OPTION)
- {
- if(_file.delete())
- {
- _coordinator.getMainPane().removeApplication(this);
- }
- }
- }
+ if(!_live && _file == null)
+ {
+ _coordinator.getMainPane().removeApplication(this);
+ }
+ else if(_live)
+ {
+ int confirm = JOptionPane.showConfirmDialog(
+ _coordinator.getMainFrame(),
+ "You are about to remove application '" + _id + "' from the IceGrid registry. "
+ + "Do you want to proceed?",
+ "Remove Confirmation",
+ JOptionPane.YES_NO_OPTION);
+
+ if(confirm == JOptionPane.YES_OPTION)
+ {
+ _coordinator.removeApplicationFromRegistry(_id);
+ _discardMe = true;
+ }
+ }
+ else
+ {
+ assert _file != null;
+
+ int confirm = JOptionPane.showConfirmDialog(
+ _coordinator.getMainFrame(),
+ "You are about to remove application '" + _id + "' and its associated file. "
+ + "Do you want to proceed?",
+ "Remove Confirmation",
+ JOptionPane.YES_NO_OPTION);
+
+ if(confirm == JOptionPane.YES_OPTION)
+ {
+ if(_file.delete())
+ {
+ _coordinator.getMainPane().removeApplication(this);
+ }
+ }
+ }
}
public boolean update(ApplicationUpdateDescriptor desc)
{
- assert _live == true;
-
- if(_skipUpdates > 0)
- {
- _skipUpdates--;
- return false;
- }
-
- if(!_registryUpdatesEnabled)
- {
- if(_updated)
- {
- _canUseUpdateDescriptor = false;
- }
- else
- {
- _concurrentUpdates.add(desc);
- }
- return false;
- }
-
- try
- {
- //
- // Description
- //
- if(desc.description != null)
- {
- _descriptor.description = desc.description.value;
- _origDescription = _descriptor.description;
- }
-
- //
- // Variables
- //
- for(int i = 0; i < desc.removeVariables.length; ++i)
- {
- _descriptor.variables.remove(desc.removeVariables[i]);
- }
- _descriptor.variables.putAll(desc.variables);
-
- //
- // Distrib
- //
- if(desc.distrib != null)
- {
- _descriptor.distrib = desc.distrib.value;
- _origDistrib = (DistributionDescriptor)_descriptor.distrib.clone();
- }
-
- //
- // Property Sets
- //
- for(int i = 0; i < desc.removePropertySets.length; ++i)
- {
- _descriptor.propertySets.remove(desc.removePropertySets[i]);
- }
- _descriptor.propertySets.putAll(desc.propertySets);
- _propertySets.update(desc.propertySets,
- desc.removePropertySets);
-
- //
- // Replica groups
- //
- for(int i = 0; i < desc.removeReplicaGroups.length; ++i)
- {
- _descriptor.replicaGroups.remove(desc.
- removeReplicaGroups[i]);
- }
- _descriptor.replicaGroups.addAll(desc.replicaGroups);
- _replicaGroups.update(desc.replicaGroups,
- desc.removeReplicaGroups);
-
-
- //
- // Service templates
- //
- for(int i = 0; i < desc.removeServiceTemplates.length; ++i)
- {
- _descriptor.serviceTemplates.remove(desc.
- removeServiceTemplates[i]);
- }
- _descriptor.serviceTemplates.putAll(desc.serviceTemplates);
- _serviceTemplates.update(desc.serviceTemplates,
- desc.removeServiceTemplates);
-
- //
- // Server templates
- //
- for(int i = 0; i < desc.removeServerTemplates.length; ++i)
- {
- _descriptor.serverTemplates.remove(desc.removeServerTemplates[i]);
- }
- _descriptor.serverTemplates.putAll(desc.serverTemplates);
- _serverTemplates.update(desc.serverTemplates,
- desc.removeServerTemplates,
- desc.serviceTemplates.keySet());
-
- //
- // Nodes
- //
- for(int i = 0; i < desc.removeNodes.length; ++i)
- {
- _descriptor.nodes.remove(desc.removeNodes[i]);
- }
-
- //
- // Updates also _descriptor.nodes
- //
- _nodes.update(desc.nodes, desc.removeNodes,
- desc.serverTemplates.keySet(),
- desc.serviceTemplates.keySet());
- }
- catch(UpdateFailedException e)
- {
- //
- // Received invalid update from IceGrid registry: a bug!
- //
- assert false;
- }
-
- return true;
+ assert _live == true;
+
+ if(_skipUpdates > 0)
+ {
+ _skipUpdates--;
+ return false;
+ }
+
+ if(!_registryUpdatesEnabled)
+ {
+ if(_updated)
+ {
+ _canUseUpdateDescriptor = false;
+ }
+ else
+ {
+ _concurrentUpdates.add(desc);
+ }
+ return false;
+ }
+
+ try
+ {
+ //
+ // Description
+ //
+ if(desc.description != null)
+ {
+ _descriptor.description = desc.description.value;
+ _origDescription = _descriptor.description;
+ }
+
+ //
+ // Variables
+ //
+ for(int i = 0; i < desc.removeVariables.length; ++i)
+ {
+ _descriptor.variables.remove(desc.removeVariables[i]);
+ }
+ _descriptor.variables.putAll(desc.variables);
+
+ //
+ // Distrib
+ //
+ if(desc.distrib != null)
+ {
+ _descriptor.distrib = desc.distrib.value;
+ _origDistrib = (DistributionDescriptor)_descriptor.distrib.clone();
+ }
+
+ //
+ // Property Sets
+ //
+ for(int i = 0; i < desc.removePropertySets.length; ++i)
+ {
+ _descriptor.propertySets.remove(desc.removePropertySets[i]);
+ }
+ _descriptor.propertySets.putAll(desc.propertySets);
+ _propertySets.update(desc.propertySets,
+ desc.removePropertySets);
+
+ //
+ // Replica groups
+ //
+ for(int i = 0; i < desc.removeReplicaGroups.length; ++i)
+ {
+ _descriptor.replicaGroups.remove(desc.
+ removeReplicaGroups[i]);
+ }
+ _descriptor.replicaGroups.addAll(desc.replicaGroups);
+ _replicaGroups.update(desc.replicaGroups,
+ desc.removeReplicaGroups);
+
+
+ //
+ // Service templates
+ //
+ for(int i = 0; i < desc.removeServiceTemplates.length; ++i)
+ {
+ _descriptor.serviceTemplates.remove(desc.
+ removeServiceTemplates[i]);
+ }
+ _descriptor.serviceTemplates.putAll(desc.serviceTemplates);
+ _serviceTemplates.update(desc.serviceTemplates,
+ desc.removeServiceTemplates);
+
+ //
+ // Server templates
+ //
+ for(int i = 0; i < desc.removeServerTemplates.length; ++i)
+ {
+ _descriptor.serverTemplates.remove(desc.removeServerTemplates[i]);
+ }
+ _descriptor.serverTemplates.putAll(desc.serverTemplates);
+ _serverTemplates.update(desc.serverTemplates,
+ desc.removeServerTemplates,
+ desc.serviceTemplates.keySet());
+
+ //
+ // Nodes
+ //
+ for(int i = 0; i < desc.removeNodes.length; ++i)
+ {
+ _descriptor.nodes.remove(desc.removeNodes[i]);
+ }
+
+ //
+ // Updates also _descriptor.nodes
+ //
+ _nodes.update(desc.nodes, desc.removeNodes,
+ desc.serverTemplates.keySet(),
+ desc.serviceTemplates.keySet());
+ }
+ catch(UpdateFailedException e)
+ {
+ //
+ // Received invalid update from IceGrid registry: a bug!
+ //
+ assert false;
+ }
+
+ return true;
}
public JTree getTree()
{
- return _tree;
+ return _tree;
}
public DefaultTreeModel getTreeModel()
{
- return _treeModel;
+ return _treeModel;
}
public Coordinator getCoordinator()
{
- return _coordinator;
+ return _coordinator;
}
public boolean isSelectionListenerEnabled()
{
- return _selectionListenerEnabled;
+ return _selectionListenerEnabled;
}
public void enableSelectionListener()
{
- _selectionListenerEnabled = true;
+ _selectionListenerEnabled = true;
}
public void disableSelectionListener()
{
- _selectionListenerEnabled = false;
+ _selectionListenerEnabled = false;
}
public void cancelEdit()
{
- if(!_updated)
- {
- _registryUpdatesEnabled = true;
-
- //
- // Apply now any delayed concurrent update
- //
- java.util.Iterator p = _concurrentUpdates.iterator();
- while(p.hasNext())
- {
- ApplicationUpdateDescriptor d = (ApplicationUpdateDescriptor)p.next();
- boolean ok = update(d);
- assert ok;
- }
- _concurrentUpdates.clear();
-
- _coordinator.getSaveAction().setEnabled(false);
- _coordinator.getDiscardUpdatesAction().setEnabled(false);
- _coordinator.getSaveToRegistryAction().setEnabled(hasFile()
- && _coordinator.connectedToMaster());
- }
+ if(!_updated)
+ {
+ _registryUpdatesEnabled = true;
+
+ //
+ // Apply now any delayed concurrent update
+ //
+ java.util.Iterator p = _concurrentUpdates.iterator();
+ while(p.hasNext())
+ {
+ ApplicationUpdateDescriptor d = (ApplicationUpdateDescriptor)p.next();
+ boolean ok = update(d);
+ assert ok;
+ }
+ _concurrentUpdates.clear();
+
+ _coordinator.getSaveAction().setEnabled(false);
+ _coordinator.getDiscardUpdatesAction().setEnabled(false);
+ _coordinator.getSaveToRegistryAction().setEnabled(hasFile()
+ && _coordinator.connectedToMaster());
+ }
}
public boolean kill()
{
- _live = false;
+ _live = false;
- if(_registryUpdatesEnabled || _discardMe)
- {
- return true;
- }
- else
- {
- _coordinator.getMainPane().resetIcon(this);
- _coordinator.getCurrentTab().selected(); // only needed when 'this'
- // corresponds to the current tab
- return false;
- }
+ if(_registryUpdatesEnabled || _discardMe)
+ {
+ return true;
+ }
+ else
+ {
+ _coordinator.getMainPane().resetIcon(this);
+ _coordinator.getCurrentTab().selected(); // only needed when 'this'
+ // corresponds to the current tab
+ return false;
+ }
}
public boolean isLive()
{
- return _live;
+ return _live;
}
public boolean hasFile()
{
- return _file != null;
+ return _file != null;
}
public boolean needsSaving()
{
- return _updated || !_registryUpdatesEnabled;
+ return _updated || !_registryUpdatesEnabled;
}
public void setPane(ApplicationPane app)
{
- _applicationPane = app;
+ _applicationPane = app;
}
public ApplicationPane getPane()
{
- return _applicationPane;
+ return _applicationPane;
}
Editor getEditor(Class c, TreeNode node)
{
- Editor result = (Editor)_editorMap.get(c);
- if(result == null)
- {
- result = node.createEditor();
- _editorMap.put(c, result);
- }
- return result;
+ Editor result = (Editor)_editorMap.get(c);
+ if(result == null)
+ {
+ result = node.createEditor();
+ _editorMap.put(c, result);
+ }
+ return result;
}
Object getDescriptor()
{
- return _descriptor;
+ return _descriptor;
}
ApplicationDescriptor saveDescriptor()
{
- ApplicationDescriptor clone = (ApplicationDescriptor)_descriptor.clone();
- clone.distrib = (IceGrid.DistributionDescriptor)clone.distrib.clone();
- return clone;
+ ApplicationDescriptor clone = (ApplicationDescriptor)_descriptor.clone();
+ clone.distrib = (IceGrid.DistributionDescriptor)clone.distrib.clone();
+ return clone;
}
void restoreDescriptor(ApplicationDescriptor clone)
{
- _descriptor.name = clone.name;
- _descriptor.variables = clone.variables;
- _descriptor.distrib.icepatch = clone.distrib.icepatch;
- _descriptor.distrib.directories = clone.distrib.directories;
- _descriptor.description = clone.description;
+ _descriptor.name = clone.name;
+ _descriptor.variables = clone.variables;
+ _descriptor.distrib.icepatch = clone.distrib.icepatch;
+ _descriptor.distrib.directories = clone.distrib.directories;
+ _descriptor.description = clone.description;
}
public void write(XMLWriter writer) throws java.io.IOException
{
- writer.writeStartTag("icegrid");
+ writer.writeStartTag("icegrid");
- java.util.List attributes = new java.util.LinkedList();
- attributes.add(createAttribute("name", _id));
+ java.util.List attributes = new java.util.LinkedList();
+ attributes.add(createAttribute("name", _id));
- writer.writeStartTag("application", attributes);
+ writer.writeStartTag("application", attributes);
- if(_descriptor.description.length() > 0)
- {
- writer.writeElement("description", _descriptor.description);
- }
- writeVariables(writer, _descriptor.variables);
- writeDistribution(writer, _descriptor.distrib);
+ if(_descriptor.description.length() > 0)
+ {
+ writer.writeElement("description", _descriptor.description);
+ }
+ writeVariables(writer, _descriptor.variables);
+ writeDistribution(writer, _descriptor.distrib);
- _serviceTemplates.write(writer);
- _serverTemplates.write(writer);
- _replicaGroups.write(writer);
- _propertySets.write(writer);
- _nodes.write(writer);
-
- writer.writeEndTag("application");
- writer.writeEndTag("icegrid");
+ _serviceTemplates.write(writer);
+ _serverTemplates.write(writer);
+ _replicaGroups.write(writer);
+ _propertySets.write(writer);
+ _nodes.write(writer);
+
+ writer.writeEndTag("application");
+ writer.writeEndTag("icegrid");
}
//
@@ -1289,41 +1289,41 @@ public class Root extends ListTreeNode
//
void disableRegistryUpdates()
{
- if(_registryUpdatesEnabled)
- {
- _registryUpdatesEnabled = false;
- _coordinator.getSaveAction().setEnabled(_live && _coordinator.connectedToMaster() || _file != null);
- _coordinator.getDiscardUpdatesAction().setEnabled(_live || _file != null);
- _coordinator.getSaveToRegistryAction().setEnabled(_coordinator.connectedToMaster());
- }
+ if(_registryUpdatesEnabled)
+ {
+ _registryUpdatesEnabled = false;
+ _coordinator.getSaveAction().setEnabled(_live && _coordinator.connectedToMaster() || _file != null);
+ _coordinator.getDiscardUpdatesAction().setEnabled(_live || _file != null);
+ _coordinator.getSaveToRegistryAction().setEnabled(_coordinator.connectedToMaster());
+ }
}
void updated()
{
- _updated = true;
- disableRegistryUpdates(); // can be still enabled when updated() is called by destroy()
+ _updated = true;
+ disableRegistryUpdates(); // can be still enabled when updated() is called by destroy()
- _concurrentUpdates.clear();
+ _concurrentUpdates.clear();
}
void rebuild() throws UpdateFailedException
{
- Utils.Resolver oldResolver = _resolver;
- String oldId = _id;
- _id = _descriptor.name;
- _resolver = new Utils.Resolver(_descriptor.variables);
- _resolver.put("application", _id);
-
- try
- {
- _nodes.rebuild();
- }
- catch(UpdateFailedException e)
- {
- _id = oldId;
- _resolver = oldResolver;
- throw e;
- }
+ Utils.Resolver oldResolver = _resolver;
+ String oldId = _id;
+ _id = _descriptor.name;
+ _resolver = new Utils.Resolver(_descriptor.variables);
+ _resolver.put("application", _id);
+
+ try
+ {
+ _nodes.rebuild();
+ }
+ catch(UpdateFailedException e)
+ {
+ _id = oldId;
+ _resolver = oldResolver;
+ throw e;
+ }
}
//
@@ -1332,7 +1332,7 @@ public class Root extends ListTreeNode
//
void removeServerInstances(String templateId)
{
- _nodes.removeServerInstances(templateId);
+ _nodes.removeServerInstances(templateId);
}
//
@@ -1341,78 +1341,78 @@ public class Root extends ListTreeNode
//
void removeServiceInstances(String templateId)
{
- _nodes.removeServiceInstances(templateId);
- _serverTemplates.removeServiceInstances(templateId);
+ _nodes.removeServiceInstances(templateId);
+ _serverTemplates.removeServiceInstances(templateId);
}
ServerTemplate findServerTemplate(String id)
{
- return (ServerTemplate)_serverTemplates.findChild(id);
+ return (ServerTemplate)_serverTemplates.findChild(id);
}
ServiceTemplate findServiceTemplate(String id)
{
- return (ServiceTemplate)_serviceTemplates.findChild(id);
+ return (ServiceTemplate)_serviceTemplates.findChild(id);
}
ReplicaGroup findReplicaGroup(String id)
{
- return (ReplicaGroup)_replicaGroups.findChild(id);
+ return (ReplicaGroup)_replicaGroups.findChild(id);
}
Node findNode(String id)
{
- return (Node)_nodes.findChild(id);
+ return (Node)_nodes.findChild(id);
}
java.util.List findServerInstances(String template)
{
- return _nodes.findServerInstances(template);
+ return _nodes.findServerInstances(template);
}
java.util.List findServiceInstances(String template)
{
- java.util.List result = _serverTemplates.findServiceInstances(template);
- result.addAll(_nodes.findServiceInstances(template));
- return result;
+ java.util.List result = _serverTemplates.findServiceInstances(template);
+ result.addAll(_nodes.findServiceInstances(template));
+ return result;
}
TemplateDescriptor findServerTemplateDescriptor(String templateName)
{
- return (TemplateDescriptor)
- _descriptor.serverTemplates.get(templateName);
+ return (TemplateDescriptor)
+ _descriptor.serverTemplates.get(templateName);
}
TemplateDescriptor findServiceTemplateDescriptor(String templateName)
{
- return (TemplateDescriptor)
- _descriptor.serviceTemplates.get(templateName);
+ return (TemplateDescriptor)
+ _descriptor.serviceTemplates.get(templateName);
}
ServerTemplates getServerTemplates()
{
- return _serverTemplates;
+ return _serverTemplates;
}
ServiceTemplates getServiceTemplates()
{
- return _serviceTemplates;
+ return _serviceTemplates;
}
ReplicaGroups getReplicaGroups()
{
- return _replicaGroups;
+ return _replicaGroups;
}
public Root getRoot()
{
- return this;
+ return this;
}
Utils.Resolver getResolver()
{
- return _resolver;
+ return _resolver;
}
//
@@ -1420,19 +1420,19 @@ public class Root extends ListTreeNode
//
java.util.Map getVariables()
{
- return _descriptor.variables;
+ return _descriptor.variables;
}
private boolean isSelected()
{
- if(_coordinator.getCurrentTab() instanceof ApplicationPane)
- {
- return ((ApplicationPane)_coordinator.getCurrentTab()).getRoot() == Root.this;
- }
- else
- {
- return false;
- }
+ if(_coordinator.getCurrentTab() instanceof ApplicationPane)
+ {
+ return ((ApplicationPane)_coordinator.getCurrentTab()).getRoot() == Root.this;
+ }
+ else
+ {
+ return false;
+ }
}
private final Coordinator _coordinator;
diff --git a/java/src/IceGridGUI/Application/ServerInstance.java b/java/src/IceGridGUI/Application/ServerInstance.java
index 8e2d7388fc3..5d8fd9a23d9 100755
--- a/java/src/IceGridGUI/Application/ServerInstance.java
+++ b/java/src/IceGridGUI/Application/ServerInstance.java
@@ -26,8 +26,8 @@ class ServerInstance extends ListTreeNode implements Server, PropertySetParent
copyDescriptor(ServerInstanceDescriptor sid)
{
ServerInstanceDescriptor copy = (ServerInstanceDescriptor)sid.clone();
- copy.propertySet = PropertySet.copyDescriptor(copy.propertySet);
- return copy;
+ copy.propertySet = PropertySet.copyDescriptor(copy.propertySet);
+ return copy;
}
//
@@ -35,7 +35,7 @@ class ServerInstance extends ListTreeNode implements Server, PropertySetParent
//
public boolean getAllowsChildren()
{
- return _isIceBox;
+ return _isIceBox;
}
//
@@ -43,519 +43,519 @@ class ServerInstance extends ListTreeNode implements Server, PropertySetParent
//
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
- actions[COPY] = !_ephemeral;
-
- Object clipboard = getCoordinator().getClipboard();
- if(clipboard != null &&
- (clipboard instanceof ServerDescriptor
- || clipboard instanceof ServerInstanceDescriptor
- || (_isIceBox && clipboard instanceof PropertySetDescriptor)))
- {
- actions[PASTE] = true;
- }
-
- actions[DELETE] = true;
- if(!_ephemeral)
- {
- actions[SHOW_VARS] = true;
- actions[SUBSTITUTE_VARS] = true;
-
- if(_isIceBox)
- {
- actions[NEW_PROPERTY_SET] = true;
- }
- }
-
- return actions;
+ boolean[] actions = new boolean[ACTION_COUNT];
+ actions[COPY] = !_ephemeral;
+
+ Object clipboard = getCoordinator().getClipboard();
+ if(clipboard != null &&
+ (clipboard instanceof ServerDescriptor
+ || clipboard instanceof ServerInstanceDescriptor
+ || (_isIceBox && clipboard instanceof PropertySetDescriptor)))
+ {
+ actions[PASTE] = true;
+ }
+
+ actions[DELETE] = true;
+ if(!_ephemeral)
+ {
+ actions[SHOW_VARS] = true;
+ actions[SUBSTITUTE_VARS] = true;
+
+ if(_isIceBox)
+ {
+ actions[NEW_PROPERTY_SET] = true;
+ }
+ }
+
+ return actions;
}
public void copy()
{
- getCoordinator().setClipboard(copyDescriptor(_descriptor));
- getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
+ getCoordinator().setClipboard(copyDescriptor(_descriptor));
+ getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
}
public void paste()
{
- if(_isIceBox)
- {
- Object descriptor = getCoordinator().getClipboard();
- if(descriptor instanceof PropertySetDescriptor)
- {
- newPropertySet(PropertySet.copyDescriptor((PropertySetDescriptor)descriptor));
- return;
- }
- }
+ if(_isIceBox)
+ {
+ Object descriptor = getCoordinator().getClipboard();
+ if(descriptor instanceof PropertySetDescriptor)
+ {
+ newPropertySet(PropertySet.copyDescriptor((PropertySetDescriptor)descriptor));
+ return;
+ }
+ }
- ((TreeNode)_parent).paste();
+ ((TreeNode)_parent).paste();
}
public void newPropertySet()
{
- newPropertySet(new PropertySetDescriptor(
- new String[0], new java.util.LinkedList()));
+ newPropertySet(new PropertySetDescriptor(
+ new String[0], new java.util.LinkedList()));
}
public JPopupMenu getPopupMenu()
{
- if(_isIceBox)
- {
- ApplicationActions actions = getCoordinator().getActionsForPopup();
- if(_popup == null)
- {
- _popup = new JPopupMenu();
- _popup.add(actions.get(NEW_PROPERTY_SET));
- }
- actions.setTarget(this);
- return _popup;
- }
- else
- {
- return null;
- }
+ if(_isIceBox)
+ {
+ ApplicationActions actions = getCoordinator().getActionsForPopup();
+ if(_popup == null)
+ {
+ _popup = new JPopupMenu();
+ _popup.add(actions.get(NEW_PROPERTY_SET));
+ }
+ actions.setTarget(this);
+ return _popup;
+ }
+ else
+ {
+ return null;
+ }
}
public Editor getEditor()
{
- if(_editor == null)
- {
- _editor = (ServerInstanceEditor)
- getRoot().getEditor(ServerInstanceEditor.class, this);
- }
- _editor.show(this);
- return _editor;
+ if(_editor == null)
+ {
+ _editor = (ServerInstanceEditor)
+ getRoot().getEditor(ServerInstanceEditor.class, this);
+ }
+ _editor.show(this);
+ return _editor;
}
protected Editor createEditor()
{
- return new ServerInstanceEditor();
+ return new ServerInstanceEditor();
}
-
+
public Component getTreeCellRendererComponent(
- JTree tree,
- Object value,
- boolean sel,
- boolean expanded,
- boolean leaf,
- int row,
- boolean hasFocus)
- {
- if(_cellRenderer == null)
- {
- //
- // Initialization
- //
- _cellRenderer = new DefaultTreeCellRenderer();
-
- _serverIcon = Utils.getIcon("/icons/16x16/server_inactive.png");
- _iceboxServerIcon = Utils.getIcon("/icons/16x16/icebox_server_inactive.png");
-
- _cellRenderer.setLeafIcon(_serverIcon);
- _cellRenderer.setOpenIcon(_iceboxServerIcon);
- _cellRenderer.setClosedIcon(_iceboxServerIcon);
- }
-
- return _cellRenderer.getTreeCellRendererComponent(
- tree, value, sel, expanded, leaf, row, hasFocus);
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
+ {
+ if(_cellRenderer == null)
+ {
+ //
+ // Initialization
+ //
+ _cellRenderer = new DefaultTreeCellRenderer();
+
+ _serverIcon = Utils.getIcon("/icons/16x16/server_inactive.png");
+ _iceboxServerIcon = Utils.getIcon("/icons/16x16/icebox_server_inactive.png");
+
+ _cellRenderer.setLeafIcon(_serverIcon);
+ _cellRenderer.setOpenIcon(_iceboxServerIcon);
+ _cellRenderer.setClosedIcon(_iceboxServerIcon);
+ }
+
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
}
public void destroy()
{
- Node node = (Node)_parent;
-
- if(_ephemeral)
- {
- node.removeServer(this);
- }
- else
- {
- node.removeDescriptor(_descriptor);
- node.removeServer(this);
- node.getEditable().removeElement(_id, _editable, Server.class);
- getRoot().updated();
- }
+ Node node = (Node)_parent;
+
+ if(_ephemeral)
+ {
+ node.removeServer(this);
+ }
+ else
+ {
+ node.removeDescriptor(_descriptor);
+ node.removeServer(this);
+ node.getEditable().removeElement(_id, _editable, Server.class);
+ getRoot().updated();
+ }
}
public Object getDescriptor()
{
- return _descriptor;
+ return _descriptor;
}
public Object saveDescriptor()
{
- return _descriptor.clone();
+ return _descriptor.clone();
}
public void restoreDescriptor(Object savedDescriptor)
{
- ServerInstanceDescriptor copy = (ServerInstanceDescriptor)savedDescriptor;
+ ServerInstanceDescriptor copy = (ServerInstanceDescriptor)savedDescriptor;
- _descriptor.template = copy.template;
- _descriptor.parameterValues = copy.parameterValues;
- _descriptor.propertySet = copy.propertySet;
+ _descriptor.template = copy.template;
+ _descriptor.parameterValues = copy.parameterValues;
+ _descriptor.propertySet = copy.propertySet;
}
//
// Builds the server and all its sub-tree
//
ServerInstance(boolean brandNew, TreeNode parent, String serverId,
- Utils.Resolver resolver,
- ServerInstanceDescriptor instanceDescriptor,
- boolean isIceBox)
- throws UpdateFailedException
+ Utils.Resolver resolver,
+ ServerInstanceDescriptor instanceDescriptor,
+ boolean isIceBox)
+ throws UpdateFailedException
{
- super(brandNew, parent, serverId);
- _ephemeral = false;
- rebuild(resolver, instanceDescriptor, isIceBox);
+ super(brandNew, parent, serverId);
+ _ephemeral = false;
+ rebuild(resolver, instanceDescriptor, isIceBox);
}
ServerInstance(TreeNode parent, String serverId,
- ServerInstanceDescriptor instanceDescriptor)
+ ServerInstanceDescriptor instanceDescriptor)
{
- super(false, parent, serverId);
- _ephemeral = true;
- try
- {
- rebuild(null, instanceDescriptor, false);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
+ super(false, parent, serverId);
+ _ephemeral = true;
+ try
+ {
+ rebuild(null, instanceDescriptor, false);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
}
void write(XMLWriter writer) throws java.io.IOException
{
- if(!_ephemeral)
- {
- TemplateDescriptor templateDescriptor
- = getRoot().findServerTemplateDescriptor(_descriptor.template);
-
- java.util.LinkedList attributes = parameterValuesToAttributes(
- _descriptor.parameterValues, templateDescriptor.parameters);
- attributes.addFirst(createAttribute("template", _descriptor.template));
-
- if(_descriptor.propertySet.references.length == 0 &&
- _descriptor.propertySet.properties.size() == 0 &&
- _children.size() == 0)
- {
- writer.writeElement("server-instance", attributes);
- }
- else
- {
- writer.writeStartTag("server-instance", attributes);
- writePropertySet(writer, _descriptor.propertySet, null, null);
-
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- PropertySet ps = (PropertySet)p.next();
- ps.write(writer);
- }
-
- writer.writeEndTag("server-instance");
- }
- }
+ if(!_ephemeral)
+ {
+ TemplateDescriptor templateDescriptor
+ = getRoot().findServerTemplateDescriptor(_descriptor.template);
+
+ java.util.LinkedList attributes = parameterValuesToAttributes(
+ _descriptor.parameterValues, templateDescriptor.parameters);
+ attributes.addFirst(createAttribute("template", _descriptor.template));
+
+ if(_descriptor.propertySet.references.length == 0 &&
+ _descriptor.propertySet.properties.size() == 0 &&
+ _children.size() == 0)
+ {
+ writer.writeElement("server-instance", attributes);
+ }
+ else
+ {
+ writer.writeStartTag("server-instance", attributes);
+ writePropertySet(writer, _descriptor.propertySet, null, null);
+
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ PropertySet ps = (PropertySet)p.next();
+ ps.write(writer);
+ }
+
+ writer.writeEndTag("server-instance");
+ }
+ }
}
boolean isIceBox()
{
- return _isIceBox;
+ return _isIceBox;
}
void isIceBox(boolean newValue)
{
- if(newValue != _isIceBox)
- {
- _isIceBox = newValue;
- _children.clear();
- getRoot().getTreeModel().nodeStructureChanged(this);
- }
+ if(newValue != _isIceBox)
+ {
+ _isIceBox = newValue;
+ _children.clear();
+ getRoot().getTreeModel().nodeStructureChanged(this);
+ }
}
static private class Backup
{
- Backup(Editable ne)
- {
- nodeEditable = ne;
- }
+ Backup(Editable ne)
+ {
+ nodeEditable = ne;
+ }
- Editable nodeEditable;
- java.util.Map parameterValues;
+ Editable nodeEditable;
+ java.util.Map parameterValues;
}
public Object rebuild(java.util.List editables) throws UpdateFailedException
{
- Node node = (Node)_parent;
- Backup backup = new Backup(node.getEditable().save());
-
- TemplateDescriptor templateDescriptor
- = getRoot().findServerTemplateDescriptor(_descriptor.template);
-
- java.util.Set parameters = new java.util.HashSet(templateDescriptor.parameters);
- if(!parameters.equals(_descriptor.parameterValues.keySet()))
- {
- backup.parameterValues = _descriptor.parameterValues;
- _descriptor.parameterValues = Editor.makeParameterValues(
- _descriptor.parameterValues, templateDescriptor.parameters);
- }
- ServerInstance newServer = node.createServer(false, _descriptor);
-
-
- if(_id.equals(newServer.getId()))
- {
- //
- // A simple update. We can't simply rebuild server because
- // we need to keep a backup
- //
- if(_editable.isModified())
- {
- newServer.getEditable().markModified();
- }
-
- node.removeServer(this);
- try
- {
- node.insertServer(newServer, true);
- }
- catch(UpdateFailedException e)
- {
- assert false; // impossible, we just removed a child with
- // this id
- }
-
- if(backup.parameterValues != null)
- {
- editables.add(newServer.getEditable());
- }
- }
- else
- {
- newServer.getEditable().markNew();
- node.removeServer(this);
- node.getEditable().removeElement(_id, _editable, Server.class);
- try
- {
- node.insertServer(newServer, true);
- }
- catch(UpdateFailedException e)
- {
- restore(backup);
- throw e;
- }
- }
-
- return backup;
+ Node node = (Node)_parent;
+ Backup backup = new Backup(node.getEditable().save());
+
+ TemplateDescriptor templateDescriptor
+ = getRoot().findServerTemplateDescriptor(_descriptor.template);
+
+ java.util.Set parameters = new java.util.HashSet(templateDescriptor.parameters);
+ if(!parameters.equals(_descriptor.parameterValues.keySet()))
+ {
+ backup.parameterValues = _descriptor.parameterValues;
+ _descriptor.parameterValues = Editor.makeParameterValues(
+ _descriptor.parameterValues, templateDescriptor.parameters);
+ }
+ ServerInstance newServer = node.createServer(false, _descriptor);
+
+
+ if(_id.equals(newServer.getId()))
+ {
+ //
+ // A simple update. We can't simply rebuild server because
+ // we need to keep a backup
+ //
+ if(_editable.isModified())
+ {
+ newServer.getEditable().markModified();
+ }
+
+ node.removeServer(this);
+ try
+ {
+ node.insertServer(newServer, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false; // impossible, we just removed a child with
+ // this id
+ }
+
+ if(backup.parameterValues != null)
+ {
+ editables.add(newServer.getEditable());
+ }
+ }
+ else
+ {
+ newServer.getEditable().markNew();
+ node.removeServer(this);
+ node.getEditable().removeElement(_id, _editable, Server.class);
+ try
+ {
+ node.insertServer(newServer, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ restore(backup);
+ throw e;
+ }
+ }
+
+ return backup;
}
public void restore(Object backupObj)
{
- Backup backup = (Backup)backupObj;
- Node node = (Node)_parent;
-
- node.getEditable().restore(backup.nodeEditable);
+ Backup backup = (Backup)backupObj;
+ Node node = (Node)_parent;
+
+ node.getEditable().restore(backup.nodeEditable);
- if(backup.parameterValues != null)
- {
- _descriptor.parameterValues = backup.parameterValues;
- }
+ if(backup.parameterValues != null)
+ {
+ _descriptor.parameterValues = backup.parameterValues;
+ }
- TreeNode badServer = node.findChildWithDescriptor(_descriptor);
+ TreeNode badServer = node.findChildWithDescriptor(_descriptor);
- if(badServer != null)
- {
- node.removeServer(badServer);
- }
+ if(badServer != null)
+ {
+ node.removeServer(badServer);
+ }
- try
- {
- node.insertServer(this, true);
- }
- catch(UpdateFailedException e)
- {
- assert false; // impossible
- }
+ try
+ {
+ node.insertServer(this, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false; // impossible
+ }
}
public void tryAdd(String unsubstitutedId, PropertySetDescriptor descriptor)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- insertPropertySet(new PropertySet(this,
- Utils.substitute(unsubstitutedId, _resolver),
- unsubstitutedId,
- descriptor),
- true);
- _descriptor.servicePropertySets.put(unsubstitutedId, descriptor);
- _editable.markModified();
+ insertPropertySet(new PropertySet(this,
+ Utils.substitute(unsubstitutedId, _resolver),
+ unsubstitutedId,
+ descriptor),
+ true);
+ _descriptor.servicePropertySets.put(unsubstitutedId, descriptor);
+ _editable.markModified();
}
public void tryRename(String oldId, String oldUnresolvedId,
- String newUnsubstitutedId)
- throws UpdateFailedException
- {
- PropertySet oldChild = (PropertySet)findChild(oldId);
- assert oldChild != null;
- removePropertySet(oldChild);
- PropertySetDescriptor descriptor = (PropertySetDescriptor)oldChild.getDescriptor();
-
- try
- {
- insertPropertySet(
- new PropertySet(this,
- Utils.substitute(newUnsubstitutedId, _resolver),
- newUnsubstitutedId, descriptor),
- true);
- }
- catch(UpdateFailedException ex)
- {
- try
- {
- insertPropertySet(oldChild, true);
- }
- catch(UpdateFailedException ufe)
- {
- assert false;
- }
- throw ex;
- }
-
- _editable.markModified();
- _descriptor.servicePropertySets.remove(oldUnresolvedId);
- _descriptor.servicePropertySets.put(newUnsubstitutedId, descriptor);
+ String newUnsubstitutedId)
+ throws UpdateFailedException
+ {
+ PropertySet oldChild = (PropertySet)findChild(oldId);
+ assert oldChild != null;
+ removePropertySet(oldChild);
+ PropertySetDescriptor descriptor = (PropertySetDescriptor)oldChild.getDescriptor();
+
+ try
+ {
+ insertPropertySet(
+ new PropertySet(this,
+ Utils.substitute(newUnsubstitutedId, _resolver),
+ newUnsubstitutedId, descriptor),
+ true);
+ }
+ catch(UpdateFailedException ex)
+ {
+ try
+ {
+ insertPropertySet(oldChild, true);
+ }
+ catch(UpdateFailedException ufe)
+ {
+ assert false;
+ }
+ throw ex;
+ }
+
+ _editable.markModified();
+ _descriptor.servicePropertySets.remove(oldUnresolvedId);
+ _descriptor.servicePropertySets.put(newUnsubstitutedId, descriptor);
}
public void insertPropertySet(PropertySet nps, boolean fireEvent)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- insertChild(nps, fireEvent);
+ insertChild(nps, fireEvent);
}
public void removePropertySet(PropertySet nps)
{
- removeChild(nps);
+ removeChild(nps);
}
public void removeDescriptor(String unsubstitutedId)
{
- _descriptor.servicePropertySets.remove(unsubstitutedId);
+ _descriptor.servicePropertySets.remove(unsubstitutedId);
}
public Editable getEditable()
{
- return _editable;
+ return _editable;
}
Object[] getServiceNames()
{
- assert _isIceBox;
-
- //
- // Retrieve the list of service instances
- //
-
- Communicator.ChildList services = getRoot().
- findServerTemplate(_descriptor.template).getServices();
-
- Object[] result = new Object[services.size()];
- int i = 0;
-
- java.util.Iterator p = services.iterator();
- while(p.hasNext())
- {
- TreeNode n = (TreeNode)p.next();
- ServiceInstanceDescriptor d = (ServiceInstanceDescriptor)n.getDescriptor();
-
- if(d.template.length() > 0)
- {
- TemplateDescriptor templateDescriptor
- = (TemplateDescriptor)getRoot().findServiceTemplateDescriptor(d.template);
- assert templateDescriptor != null;
- Utils.Resolver serviceResolver = new Utils.Resolver(_resolver,
- d.parameterValues,
- templateDescriptor.parameterDefaults);
-
- ServiceDescriptor serviceDescriptor = (ServiceDescriptor)templateDescriptor.descriptor;
-
- result[i++] = serviceResolver.substitute(serviceDescriptor.name);
- }
- else
- {
- result[i++] = _resolver.substitute(d.descriptor.name);
- }
- }
- return result;
+ assert _isIceBox;
+
+ //
+ // Retrieve the list of service instances
+ //
+
+ Communicator.ChildList services = getRoot().
+ findServerTemplate(_descriptor.template).getServices();
+
+ Object[] result = new Object[services.size()];
+ int i = 0;
+
+ java.util.Iterator p = services.iterator();
+ while(p.hasNext())
+ {
+ TreeNode n = (TreeNode)p.next();
+ ServiceInstanceDescriptor d = (ServiceInstanceDescriptor)n.getDescriptor();
+
+ if(d.template.length() > 0)
+ {
+ TemplateDescriptor templateDescriptor
+ = (TemplateDescriptor)getRoot().findServiceTemplateDescriptor(d.template);
+ assert templateDescriptor != null;
+ Utils.Resolver serviceResolver = new Utils.Resolver(_resolver,
+ d.parameterValues,
+ templateDescriptor.parameterDefaults);
+
+ ServiceDescriptor serviceDescriptor = (ServiceDescriptor)templateDescriptor.descriptor;
+
+ result[i++] = serviceResolver.substitute(serviceDescriptor.name);
+ }
+ else
+ {
+ result[i++] = _resolver.substitute(d.descriptor.name);
+ }
+ }
+ return result;
}
//
// Update the server and its children
//
void rebuild(Utils.Resolver resolver,
- ServerInstanceDescriptor instanceDescriptor,
- boolean isIceBox) throws UpdateFailedException
+ ServerInstanceDescriptor instanceDescriptor,
+ boolean isIceBox) throws UpdateFailedException
{
- _resolver = resolver;
- _isIceBox = isIceBox;
- _descriptor = instanceDescriptor;
-
- _children.clear();
+ _resolver = resolver;
+ _isIceBox = isIceBox;
+ _descriptor = instanceDescriptor;
+
+ _children.clear();
- java.util.Iterator p = _descriptor.servicePropertySets.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- String unsubstitutedId = (String)entry.getKey();
+ java.util.Iterator p = _descriptor.servicePropertySets.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ String unsubstitutedId = (String)entry.getKey();
- insertPropertySet(new PropertySet(this,
- Utils.substitute(unsubstitutedId, _resolver),
- unsubstitutedId,
- (PropertySetDescriptor)entry.getValue()),
- false);
- }
+ insertPropertySet(new PropertySet(this,
+ Utils.substitute(unsubstitutedId, _resolver),
+ unsubstitutedId,
+ (PropertySetDescriptor)entry.getValue()),
+ false);
+ }
}
private void newPropertySet(PropertySetDescriptor descriptor)
{
- String id = makeNewChildId("Service");
-
- PropertySet ps = new PropertySet(this, id, descriptor);
- try
- {
- insertChild(ps, true);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
- getRoot().setSelectedNode(ps);
+ String id = makeNewChildId("Service");
+
+ PropertySet ps = new PropertySet(this, id, descriptor);
+ try
+ {
+ insertChild(ps, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
+ getRoot().setSelectedNode(ps);
}
Utils.Resolver getResolver()
{
- return _resolver;
+ return _resolver;
}
public boolean isEphemeral()
{
- return _ephemeral;
+ return _ephemeral;
}
public String toString()
{
- if(_ephemeral)
- {
- return super.toString();
- }
- else
- {
- return _id + ": " + _descriptor.template + "<>";
- }
+ if(_ephemeral)
+ {
+ return super.toString();
+ }
+ else
+ {
+ return _id + ": " + _descriptor.template + "<>";
+ }
}
private ServerInstanceDescriptor _descriptor;
diff --git a/java/src/IceGridGUI/Application/ServerInstanceEditor.java b/java/src/IceGridGUI/Application/ServerInstanceEditor.java
index 6f2497bb56f..44affdcbaed 100755
--- a/java/src/IceGridGUI/Application/ServerInstanceEditor.java
+++ b/java/src/IceGridGUI/Application/ServerInstanceEditor.java
@@ -30,63 +30,63 @@ class ServerInstanceEditor extends AbstractServerEditor
{
protected void writeDescriptor()
{
- ServerInstanceDescriptor descriptor = getDescriptor();
- ServerTemplate t = (ServerTemplate)_template.getSelectedItem();
-
- descriptor.template = t.getId();
- descriptor.parameterValues = _parameters.getValues();
-
- descriptor.propertySet.references =
- (String[])_propertySets.getList().toArray(new String[0]);
- descriptor.propertySet.properties = _properties.getProperties();
-
- ((ServerInstance)_target).isIceBox(
- ((TemplateDescriptor)t.getDescriptor()).descriptor instanceof IceBoxDescriptor);
+ ServerInstanceDescriptor descriptor = getDescriptor();
+ ServerTemplate t = (ServerTemplate)_template.getSelectedItem();
+
+ descriptor.template = t.getId();
+ descriptor.parameterValues = _parameters.getValues();
+
+ descriptor.propertySet.references =
+ (String[])_propertySets.getList().toArray(new String[0]);
+ descriptor.propertySet.properties = _properties.getProperties();
+
+ ((ServerInstance)_target).isIceBox(
+ ((TemplateDescriptor)t.getDescriptor()).descriptor instanceof IceBoxDescriptor);
}
protected boolean isSimpleUpdate()
{
- ServerInstanceDescriptor descriptor = getDescriptor();
- ServerTemplate t = (ServerTemplate)_template.getSelectedItem();
+ ServerInstanceDescriptor descriptor = getDescriptor();
+ ServerTemplate t = (ServerTemplate)_template.getSelectedItem();
- return descriptor.template.equals(t.getId())
- && descriptor.parameterValues.equals(_parameters.getValues());
+ return descriptor.template.equals(t.getId())
+ && descriptor.parameterValues.equals(_parameters.getValues());
}
ServerInstanceEditor()
- {
- _template.setToolTipText("Server template");
-
- //
- // Template
- //
- Action gotoTemplate = new AbstractAction(
- "", Utils.getIcon("/icons/16x16/goto.png"))
- {
- public void actionPerformed(ActionEvent e)
- {
- TreeNode t = (TreeNode)_template.getSelectedItem();
- if(t != null)
- {
- t.getRoot().setSelectedNode(t);
- }
- }
- };
- gotoTemplate.putValue(Action.SHORT_DESCRIPTION,
- "Goto this server template");
- _templateButton = new JButton(gotoTemplate);
-
- _parameters = new ParameterValuesField(this);
-
- _propertySets.getDocument().addDocumentListener(_updateListener);
- _propertySets.setToolTipText("Property Set References");
-
- _properties = new PropertiesField(this);
+ {
+ _template.setToolTipText("Server template");
+
+ //
+ // Template
+ //
+ Action gotoTemplate = new AbstractAction(
+ "", Utils.getIcon("/icons/16x16/goto.png"))
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ TreeNode t = (TreeNode)_template.getSelectedItem();
+ if(t != null)
+ {
+ t.getRoot().setSelectedNode(t);
+ }
+ }
+ };
+ gotoTemplate.putValue(Action.SHORT_DESCRIPTION,
+ "Goto this server template");
+ _templateButton = new JButton(gotoTemplate);
+
+ _parameters = new ParameterValuesField(this);
+
+ _propertySets.getDocument().addDocumentListener(_updateListener);
+ _propertySets.setToolTipText("Property Set References");
+
+ _properties = new PropertiesField(this);
}
ServerInstanceDescriptor getDescriptor()
{
- return (ServerInstanceDescriptor)_target.getDescriptor();
+ return (ServerInstanceDescriptor)_target.getDescriptor();
}
//
@@ -95,128 +95,128 @@ class ServerInstanceEditor extends AbstractServerEditor
Utils.Resolver getDetailResolver()
{
- if(_target.getCoordinator().substitute())
- {
- return _target.getResolver();
- }
- else
- {
- return null;
- }
+ if(_target.getCoordinator().substitute())
+ {
+ return _target.getResolver();
+ }
+ else
+ {
+ return null;
+ }
}
protected void appendProperties(DefaultFormBuilder builder)
{
- builder.append("Template", _template);
- builder.append(_templateButton);
- builder.nextLine();
-
- builder.append("Parameters");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
-
- builder.nextLine();
- builder.append("");
-
- builder.nextRow(-6);
- JScrollPane scrollPane = new JScrollPane(_parameters);
- CellConstraints cc = new CellConstraints();
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
- builder.nextRow(6);
- builder.nextLine();
-
- builder.append("Property Sets");
- builder.append(_propertySets, 3);
- builder.nextLine();
-
- builder.append("Properties");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
-
- builder.nextLine();
- builder.append("");
-
- builder.nextRow(-6);
- scrollPane = new JScrollPane(_properties);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
- builder.nextRow(6);
- builder.nextLine();
+ builder.append("Template", _template);
+ builder.append(_templateButton);
+ builder.nextLine();
+
+ builder.append("Parameters");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+
+ builder.nextLine();
+ builder.append("");
+
+ builder.nextRow(-6);
+ JScrollPane scrollPane = new JScrollPane(_parameters);
+ CellConstraints cc = new CellConstraints();
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
+ builder.nextRow(6);
+ builder.nextLine();
+
+ builder.append("Property Sets");
+ builder.append(_propertySets, 3);
+ builder.nextLine();
+
+ builder.append("Properties");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+
+ builder.nextLine();
+ builder.append("");
+
+ builder.nextRow(-6);
+ scrollPane = new JScrollPane(_properties);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
+ builder.nextRow(6);
+ builder.nextLine();
}
void show(ServerInstance server)
{
- detectUpdates(false);
- _target = server;
-
- ServerInstanceDescriptor descriptor = getDescriptor();
- Root root = server.getRoot();
- boolean isEditable = server.isEphemeral() || !root.getCoordinator().substitute();
-
- Utils.Resolver resolver = isEditable ? null :
- ((Node)_target.getParent()).getResolver();
-
- //
- // Need to make control enabled before changing it
- //
- _template.setEnabled(true);
-
- ServerTemplates serverTemplates = root.getServerTemplates();
- _template.setModel(serverTemplates.createComboBoxModel());
-
- ServerTemplate t = (ServerTemplate)
- serverTemplates.findChild(descriptor.template);
- assert t != null;
- _template.setSelectedItem(t);
-
- ListDataListener templateListener = new ListDataListener()
- {
- public void contentsChanged(ListDataEvent e)
- {
- updated();
-
- ServerTemplate t =
- (ServerTemplate)_template.getModel().getSelectedItem();
-
- TemplateDescriptor td = (TemplateDescriptor)t.getDescriptor();
-
- //
- // Replace parameters but keep existing values
- //
- _parameters.set(td.parameters,
- makeParameterValues(_parameters.getValues(), td.parameters),
- td.parameterDefaults, null);
- }
-
- public void intervalAdded(ListDataEvent e)
- {}
+ detectUpdates(false);
+ _target = server;
+
+ ServerInstanceDescriptor descriptor = getDescriptor();
+ Root root = server.getRoot();
+ boolean isEditable = server.isEphemeral() || !root.getCoordinator().substitute();
+
+ Utils.Resolver resolver = isEditable ? null :
+ ((Node)_target.getParent()).getResolver();
+
+ //
+ // Need to make control enabled before changing it
+ //
+ _template.setEnabled(true);
+
+ ServerTemplates serverTemplates = root.getServerTemplates();
+ _template.setModel(serverTemplates.createComboBoxModel());
+
+ ServerTemplate t = (ServerTemplate)
+ serverTemplates.findChild(descriptor.template);
+ assert t != null;
+ _template.setSelectedItem(t);
+
+ ListDataListener templateListener = new ListDataListener()
+ {
+ public void contentsChanged(ListDataEvent e)
+ {
+ updated();
+
+ ServerTemplate t =
+ (ServerTemplate)_template.getModel().getSelectedItem();
+
+ TemplateDescriptor td = (TemplateDescriptor)t.getDescriptor();
+
+ //
+ // Replace parameters but keep existing values
+ //
+ _parameters.set(td.parameters,
+ makeParameterValues(_parameters.getValues(), td.parameters),
+ td.parameterDefaults, null);
+ }
+
+ public void intervalAdded(ListDataEvent e)
+ {}
- public void intervalRemoved(ListDataEvent e)
- {}
- };
-
- _template.getModel().addListDataListener(templateListener);
- _template.setEnabled(isEditable);
-
- TemplateDescriptor td = (TemplateDescriptor)t.getDescriptor();
- _parameters.set(td.parameters, descriptor.parameterValues,
- td.parameterDefaults, resolver);
-
- _propertySets.setList(java.util.Arrays.asList(descriptor.propertySet.references),
- getDetailResolver());
- _propertySets.setEditable(isEditable);
-
- _properties.setProperties(descriptor.propertySet.properties, null, null,
- getDetailResolver(), isEditable);
-
- _applyButton.setEnabled(server.isEphemeral());
- _discardButton.setEnabled(server.isEphemeral());
- detectUpdates(true);
+ public void intervalRemoved(ListDataEvent e)
+ {}
+ };
+
+ _template.getModel().addListDataListener(templateListener);
+ _template.setEnabled(isEditable);
+
+ TemplateDescriptor td = (TemplateDescriptor)t.getDescriptor();
+ _parameters.set(td.parameters, descriptor.parameterValues,
+ td.parameterDefaults, resolver);
+
+ _propertySets.setList(java.util.Arrays.asList(descriptor.propertySet.references),
+ getDetailResolver());
+ _propertySets.setEditable(isEditable);
+
+ _properties.setProperties(descriptor.propertySet.properties, null, null,
+ getDetailResolver(), isEditable);
+
+ _applyButton.setEnabled(server.isEphemeral());
+ _discardButton.setEnabled(server.isEphemeral());
+ detectUpdates(true);
}
private JComboBox _template = new JComboBox();
diff --git a/java/src/IceGridGUI/Application/ServerInstancePropertySetEditor.java b/java/src/IceGridGUI/Application/ServerInstancePropertySetEditor.java
index 76fac6c588a..ecf97467164 100644
--- a/java/src/IceGridGUI/Application/ServerInstancePropertySetEditor.java
+++ b/java/src/IceGridGUI/Application/ServerInstancePropertySetEditor.java
@@ -20,47 +20,47 @@ class ServerInstancePropertySetEditor extends PropertySetEditor
{
ServerInstancePropertySetEditor()
{
- super("Service Name");
- _id.setToolTipText("The name of the service");
+ super("Service Name");
+ _id.setToolTipText("The name of the service");
- JTextField idTextField = (JTextField)
- _id.getEditor().getEditorComponent();
- idTextField.getDocument().addDocumentListener(_updateListener);
+ JTextField idTextField = (JTextField)
+ _id.getEditor().getEditorComponent();
+ idTextField.getDocument().addDocumentListener(_updateListener);
}
protected void buildPropertiesPanel()
{
- super.buildPropertiesPanel();
- _propertiesPanel.setName("Service Instance Property Set");
+ super.buildPropertiesPanel();
+ _propertiesPanel.setName("Service Instance Property Set");
}
protected JComponent getIdComponent()
{
- return _id;
+ return _id;
}
protected String getIdText()
{
- if(_id.getSelectedItem() == null)
- {
- return "";
- }
- else
- {
- return _id.getSelectedItem().toString().trim();
- }
+ if(_id.getSelectedItem() == null)
+ {
+ return "";
+ }
+ else
+ {
+ return _id.getSelectedItem().toString().trim();
+ }
}
protected void showId(String unsubstitutedId, Utils.Resolver resolver)
{
- ServerInstance s = (ServerInstance)_target.getParent();
-
- _id.setEnabled(true);
- _id.setEditable(true);
- _id.setModel(new DefaultComboBoxModel(s.getServiceNames()));
- _id.setSelectedItem(Utils.substitute(unsubstitutedId, resolver));
- _id.setEditable(resolver == null);
- _id.setEnabled(resolver == null);
+ ServerInstance s = (ServerInstance)_target.getParent();
+
+ _id.setEnabled(true);
+ _id.setEditable(true);
+ _id.setModel(new DefaultComboBoxModel(s.getServiceNames()));
+ _id.setSelectedItem(Utils.substitute(unsubstitutedId, resolver));
+ _id.setEditable(resolver == null);
+ _id.setEnabled(resolver == null);
}
private JComboBox _id = new JComboBox();
diff --git a/java/src/IceGridGUI/Application/ServerSubEditor.java b/java/src/IceGridGUI/Application/ServerSubEditor.java
index aee4c65a92f..3acedfe0a7f 100755
--- a/java/src/IceGridGUI/Application/ServerSubEditor.java
+++ b/java/src/IceGridGUI/Application/ServerSubEditor.java
@@ -29,352 +29,352 @@ class ServerSubEditor extends CommunicatorSubEditor
{
ServerSubEditor(Editor mainEditor)
{
- super(mainEditor);
-
- _id.getDocument().addDocumentListener(
- _mainEditor.getUpdateListener());
- _id.setToolTipText("Must be unique within this IceGrid deployment");
-
- _iceVersion.getDocument().addDocumentListener(
- _mainEditor.getUpdateListener());
- _iceVersion.setToolTipText("<html>This server's Ice version, such as 3.0 or 3.1.1;<br>"
- + "leave blank to use the version of the IceGrid registry.</html>");
-
- _exe.getDocument().addDocumentListener(
- _mainEditor.getUpdateListener());
- _exe.setToolTipText("<html>Path to this server's executable, e.g.:<br>"
- + "icebox<br>"
- + "java<br>"
- + "myHelloServer<br>"
- + "C:\\testbed\\hello\\server</html>");
-
- _pwd.getDocument().addDocumentListener(
- _mainEditor.getUpdateListener());
- _pwd.setToolTipText(
- "<html>If not set, the server will start in "
- + "<i>node data dir</i>/servers/<i>server-id</i>;<br>"
- + "relative directories are relative to the current directory"
- + " of the icegridnode process.</html>");
-
- _options.getDocument().addDocumentListener(
- _mainEditor.getUpdateListener());
- _options.setToolTipText(
- "<html>Command-line arguments for this server.<br>"
- + "Use whitespace as separator; use double-quotes around arguments containing whitespaces</html>");
-
- _user.getDocument().addDocumentListener(
- _mainEditor.getUpdateListener());
- _user.setToolTipText(
- "<html>Run the server using this user account.<br>"
- + "This feature is only available on Unix/Linux, when the IceGrid node runs as root.</html>");
-
- _envs = new MapField(mainEditor, "Name", "Value", true);
-
- _activation = new JComboBox(new Object[]{ALWAYS, MANUAL, ON_DEMAND, SESSION});
- _activation.setToolTipText("<html>always: IceGrid starts and keeps the server up all the time<br>"
- + "manual: you start the server yourself<br>"
- + "on-demand: IceGrid starts the server when a client needs it<br>"
- + "session: IceGrid starts and shuts down the server for each session</html>");
-
- JTextField activationTextField = (JTextField)
- _activation.getEditor().getEditorComponent();
- activationTextField.getDocument().addDocumentListener(
- _mainEditor.getUpdateListener());
-
- _activationTimeout.getDocument().addDocumentListener(
- _mainEditor.getUpdateListener());
- _activationTimeout.setToolTipText("<html>Number of seconds; if not set or set to 0, "
- + "the IceGrid Node<br> uses the value of its "
- + "IceGrid.Node.WaitTime property</html>");
- _deactivationTimeout.getDocument().addDocumentListener(
- _mainEditor.getUpdateListener());
- _deactivationTimeout.setToolTipText("<html>Number of seconds; if not set or set to 0, "
- + "the IceGrid Node<br> uses the value of its "
- + "IceGrid.Node.WaitTime property</html>");
-
- Action allocatable = new AbstractAction("Allocatable")
- {
- public void actionPerformed(ActionEvent e)
- {
- _mainEditor.updated();
- }
- };
- allocatable.putValue(Action.SHORT_DESCRIPTION,
- "<html>Check this box to ensure that the well-known objects<br>"
- + "of this server can only be allocated by one session at a time.</html>");
- _allocatable = new JCheckBox(allocatable);
-
-
- Action appDistrib = new AbstractAction("Depends on the application distribution")
- {
- public void actionPerformed(ActionEvent e)
- {
- _mainEditor.updated();
- }
- };
- appDistrib.putValue(Action.SHORT_DESCRIPTION,
- "<html>Check this box if this server needs to be restarted<br>"
- + "each time the distribution for your application is refreshed.</html>");
-
- _applicationDistrib = new JCheckBox(appDistrib);
-
- _distrib = new JComboBox(new Object[]{NO_DISTRIB, DEFAULT_DISTRIB});
- _distrib.setToolTipText(
- "The proxy to the IcePatch2 server holding your files");
-
- JTextField distribTextField = (JTextField)
- _distrib.getEditor().getEditorComponent();
- distribTextField.getDocument().addDocumentListener(
- _mainEditor.getUpdateListener());
-
- _distribDirs.getDocument().addDocumentListener(
- _mainEditor.getUpdateListener());
- _distribDirs.setToolTipText(
- "<html>Include only these directories when patching.<br>"
- + "Use whitespace as separator; use double-quotes around directories containing whitespaces</html>");
-
+ super(mainEditor);
+
+ _id.getDocument().addDocumentListener(
+ _mainEditor.getUpdateListener());
+ _id.setToolTipText("Must be unique within this IceGrid deployment");
+
+ _iceVersion.getDocument().addDocumentListener(
+ _mainEditor.getUpdateListener());
+ _iceVersion.setToolTipText("<html>This server's Ice version, such as 3.0 or 3.1.1;<br>"
+ + "leave blank to use the version of the IceGrid registry.</html>");
+
+ _exe.getDocument().addDocumentListener(
+ _mainEditor.getUpdateListener());
+ _exe.setToolTipText("<html>Path to this server's executable, e.g.:<br>"
+ + "icebox<br>"
+ + "java<br>"
+ + "myHelloServer<br>"
+ + "C:\\testbed\\hello\\server</html>");
+
+ _pwd.getDocument().addDocumentListener(
+ _mainEditor.getUpdateListener());
+ _pwd.setToolTipText(
+ "<html>If not set, the server will start in "
+ + "<i>node data dir</i>/servers/<i>server-id</i>;<br>"
+ + "relative directories are relative to the current directory"
+ + " of the icegridnode process.</html>");
+
+ _options.getDocument().addDocumentListener(
+ _mainEditor.getUpdateListener());
+ _options.setToolTipText(
+ "<html>Command-line arguments for this server.<br>"
+ + "Use whitespace as separator; use double-quotes around arguments containing whitespaces</html>");
+
+ _user.getDocument().addDocumentListener(
+ _mainEditor.getUpdateListener());
+ _user.setToolTipText(
+ "<html>Run the server using this user account.<br>"
+ + "This feature is only available on Unix/Linux, when the IceGrid node runs as root.</html>");
+
+ _envs = new MapField(mainEditor, "Name", "Value", true);
+
+ _activation = new JComboBox(new Object[]{ALWAYS, MANUAL, ON_DEMAND, SESSION});
+ _activation.setToolTipText("<html>always: IceGrid starts and keeps the server up all the time<br>"
+ + "manual: you start the server yourself<br>"
+ + "on-demand: IceGrid starts the server when a client needs it<br>"
+ + "session: IceGrid starts and shuts down the server for each session</html>");
+
+ JTextField activationTextField = (JTextField)
+ _activation.getEditor().getEditorComponent();
+ activationTextField.getDocument().addDocumentListener(
+ _mainEditor.getUpdateListener());
+
+ _activationTimeout.getDocument().addDocumentListener(
+ _mainEditor.getUpdateListener());
+ _activationTimeout.setToolTipText("<html>Number of seconds; if not set or set to 0, "
+ + "the IceGrid Node<br> uses the value of its "
+ + "IceGrid.Node.WaitTime property</html>");
+ _deactivationTimeout.getDocument().addDocumentListener(
+ _mainEditor.getUpdateListener());
+ _deactivationTimeout.setToolTipText("<html>Number of seconds; if not set or set to 0, "
+ + "the IceGrid Node<br> uses the value of its "
+ + "IceGrid.Node.WaitTime property</html>");
+
+ Action allocatable = new AbstractAction("Allocatable")
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ _mainEditor.updated();
+ }
+ };
+ allocatable.putValue(Action.SHORT_DESCRIPTION,
+ "<html>Check this box to ensure that the well-known objects<br>"
+ + "of this server can only be allocated by one session at a time.</html>");
+ _allocatable = new JCheckBox(allocatable);
+
+
+ Action appDistrib = new AbstractAction("Depends on the application distribution")
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ _mainEditor.updated();
+ }
+ };
+ appDistrib.putValue(Action.SHORT_DESCRIPTION,
+ "<html>Check this box if this server needs to be restarted<br>"
+ + "each time the distribution for your application is refreshed.</html>");
+
+ _applicationDistrib = new JCheckBox(appDistrib);
+
+ _distrib = new JComboBox(new Object[]{NO_DISTRIB, DEFAULT_DISTRIB});
+ _distrib.setToolTipText(
+ "The proxy to the IcePatch2 server holding your files");
+
+ JTextField distribTextField = (JTextField)
+ _distrib.getEditor().getEditorComponent();
+ distribTextField.getDocument().addDocumentListener(
+ _mainEditor.getUpdateListener());
+
+ _distribDirs.getDocument().addDocumentListener(
+ _mainEditor.getUpdateListener());
+ _distribDirs.setToolTipText(
+ "<html>Include only these directories when patching.<br>"
+ + "Use whitespace as separator; use double-quotes around directories containing whitespaces</html>");
+
}
ServerDescriptor getServerDescriptor()
{
- return (ServerDescriptor)
- _mainEditor.getSubDescriptor();
+ return (ServerDescriptor)
+ _mainEditor.getSubDescriptor();
}
void appendProperties(DefaultFormBuilder builder)
{
- builder.append("Server ID");
- builder.append(_id, 3);
- builder.nextLine();
- builder.append("Ice Version");
- builder.append(_iceVersion, 3);
- builder.nextLine();
-
- //
- // Add Communicator fields
- //
- super.appendProperties(builder);
-
- builder.appendSeparator("Activation");
- builder.append("Path to Executable");
- builder.append(_exe, 3);
- builder.nextLine();
- builder.append("Working Directory");
- builder.append(_pwd, 3);
- builder.nextLine();
- builder.append("Command Arguments");
- builder.append(_options, 3);
- builder.nextLine();
- builder.append("Run as");
- builder.append(_user, 3);
- builder.nextLine();
- builder.append("Environment Variables");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
- builder.nextRow(-6);
- CellConstraints cc = new CellConstraints();
- JScrollPane scrollPane = new JScrollPane(_envs);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
- builder.nextRow(6);
- builder.nextLine();
-
- builder.append("Activation Mode");
- builder.append(_activation, 3);
- builder.nextLine();
- builder.append("Activation Timeout");
- builder.append(_activationTimeout, 3);
- builder.nextLine();
- builder.append("Deactivation Timeout");
- builder.append(_deactivationTimeout, 3);
- builder.nextLine();
- builder.append("", _allocatable);
- builder.nextLine();
-
- JComponent c = builder.appendSeparator("Distribution");
- c.setToolTipText("Files specific to this server");
-
- builder.append("", _applicationDistrib);
- builder.nextLine();
- builder.append("IcePatch2 Proxy");
- builder.append(_distrib, 3);
- builder.nextLine();
- builder.append("Directories");
- builder.append(_distribDirs, 3);
- builder.nextLine();
+ builder.append("Server ID");
+ builder.append(_id, 3);
+ builder.nextLine();
+ builder.append("Ice Version");
+ builder.append(_iceVersion, 3);
+ builder.nextLine();
+
+ //
+ // Add Communicator fields
+ //
+ super.appendProperties(builder);
+
+ builder.appendSeparator("Activation");
+ builder.append("Path to Executable");
+ builder.append(_exe, 3);
+ builder.nextLine();
+ builder.append("Working Directory");
+ builder.append(_pwd, 3);
+ builder.nextLine();
+ builder.append("Command Arguments");
+ builder.append(_options, 3);
+ builder.nextLine();
+ builder.append("Run as");
+ builder.append(_user, 3);
+ builder.nextLine();
+ builder.append("Environment Variables");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+ builder.nextRow(-6);
+ CellConstraints cc = new CellConstraints();
+ JScrollPane scrollPane = new JScrollPane(_envs);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
+ builder.nextRow(6);
+ builder.nextLine();
+
+ builder.append("Activation Mode");
+ builder.append(_activation, 3);
+ builder.nextLine();
+ builder.append("Activation Timeout");
+ builder.append(_activationTimeout, 3);
+ builder.nextLine();
+ builder.append("Deactivation Timeout");
+ builder.append(_deactivationTimeout, 3);
+ builder.nextLine();
+ builder.append("", _allocatable);
+ builder.nextLine();
+
+ JComponent c = builder.appendSeparator("Distribution");
+ c.setToolTipText("Files specific to this server");
+
+ builder.append("", _applicationDistrib);
+ builder.nextLine();
+ builder.append("IcePatch2 Proxy");
+ builder.append(_distrib, 3);
+ builder.nextLine();
+ builder.append("Directories");
+ builder.append(_distribDirs, 3);
+ builder.nextLine();
}
void writeDescriptor()
{
- ServerDescriptor descriptor = getServerDescriptor();
- descriptor.id = _id.getText().trim();
- descriptor.iceVersion = _iceVersion.getText().trim();
- descriptor.exe = _exe.getText().trim();
- descriptor.pwd = _pwd.getText().trim();
-
- descriptor.options = _options.getList();
- descriptor.user = _user.getText().trim();
-
- descriptor.envs = new java.util.LinkedList();
- java.util.Iterator p = _envs.get().entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- descriptor.envs.add(entry.getKey().toString()
- + "=" + entry.getValue().toString());
- }
+ ServerDescriptor descriptor = getServerDescriptor();
+ descriptor.id = _id.getText().trim();
+ descriptor.iceVersion = _iceVersion.getText().trim();
+ descriptor.exe = _exe.getText().trim();
+ descriptor.pwd = _pwd.getText().trim();
+
+ descriptor.options = _options.getList();
+ descriptor.user = _user.getText().trim();
+
+ descriptor.envs = new java.util.LinkedList();
+ java.util.Iterator p = _envs.get().entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ descriptor.envs.add(entry.getKey().toString()
+ + "=" + entry.getValue().toString());
+ }
- descriptor.activation = _activation.getSelectedItem().toString().trim();
- descriptor.activationTimeout = _activationTimeout.getText().trim();
- descriptor.deactivationTimeout = _deactivationTimeout.getText().trim();
-
- descriptor.allocatable = _allocatable.isSelected();
-
- descriptor.applicationDistrib = _applicationDistrib.isSelected();
-
- if(_distrib.getSelectedItem() == NO_DISTRIB)
- {
- descriptor.distrib.icepatch = "";
- }
- else
- {
- descriptor.distrib.icepatch = _distrib.getSelectedItem().toString().trim();
- }
- descriptor.distrib.directories = _distribDirs.getList();
-
- super.writeDescriptor(descriptor);
- }
+ descriptor.activation = _activation.getSelectedItem().toString().trim();
+ descriptor.activationTimeout = _activationTimeout.getText().trim();
+ descriptor.deactivationTimeout = _deactivationTimeout.getText().trim();
+
+ descriptor.allocatable = _allocatable.isSelected();
+
+ descriptor.applicationDistrib = _applicationDistrib.isSelected();
+
+ if(_distrib.getSelectedItem() == NO_DISTRIB)
+ {
+ descriptor.distrib.icepatch = "";
+ }
+ else
+ {
+ descriptor.distrib.icepatch = _distrib.getSelectedItem().toString().trim();
+ }
+ descriptor.distrib.directories = _distribDirs.getList();
+
+ super.writeDescriptor(descriptor);
+ }
boolean isSimpleUpdate()
{
- return getServerDescriptor().id.equals(_id.getText().trim());
+ return getServerDescriptor().id.equals(_id.getText().trim());
}
boolean validate()
{
- return _mainEditor.check(new String[]{
- "Server ID", _id.getText().trim(),
- "Path to Executable", _exe.getText().trim()});
+ return _mainEditor.check(new String[]{
+ "Server ID", _id.getText().trim(),
+ "Path to Executable", _exe.getText().trim()});
}
void show(boolean isEditable)
{
- ServerDescriptor descriptor = getServerDescriptor();
- Utils.Resolver detailResolver = _mainEditor.getDetailResolver();
-
- isEditable = isEditable && (detailResolver == null);
-
- if(detailResolver != null)
- {
- _id.setText(detailResolver.find("server"));
- }
- else
- {
- _id.setText(descriptor.id);
- }
- _id.setEditable(isEditable);
-
- _iceVersion.setText(
- Utils.substitute(descriptor.iceVersion, detailResolver));
- _iceVersion.setEditable(isEditable);
-
- _exe.setText(
- Utils.substitute(descriptor.exe, detailResolver));
- _exe.setEditable(isEditable);
- _pwd.setText(
- Utils.substitute(descriptor.pwd, detailResolver));
- _pwd.setEditable(isEditable);
-
- _options.setList(descriptor.options, detailResolver);
- _options.setEditable(isEditable);
-
- _user.setText(
- Utils.substitute(descriptor.user, detailResolver));
- _user.setEditable(isEditable);
-
- java.util.Map envMap = new java.util.TreeMap();
- java.util.Iterator p = descriptor.envs.iterator();
- while(p.hasNext())
- {
- String env = (String)p.next();
- int equal = env.indexOf('=');
- if(equal == -1 || equal == env.length() - 1)
- {
- envMap.put(env, "");
- }
- else
- {
- envMap.put(env.substring(0, equal),
- env.substring(equal + 1));
- }
- }
- _envs.set(envMap, detailResolver, isEditable);
-
- String activation = Utils.substitute(descriptor.activation,
- detailResolver);
-
- _activation.setEnabled(true);
- _activation.setEditable(true);
- if(activation.equals(ALWAYS))
- {
- _activation.setSelectedItem(ALWAYS);
- }
- else if(activation.equals(MANUAL))
- {
- _activation.setSelectedItem(MANUAL);
- }
- else if(activation.equals(ON_DEMAND))
- {
- _activation.setSelectedItem(ON_DEMAND);
- }
- else if(activation.equals(SESSION))
- {
- _activation.setSelectedItem(SESSION);
- }
- else
- {
- _activation.setSelectedItem(activation);
- }
- _activation.setEnabled(isEditable);
- _activation.setEditable(isEditable);
-
- _activationTimeout.setText(
- Utils.substitute(descriptor.activationTimeout, detailResolver));
- _activationTimeout.setEditable(isEditable);
-
- _deactivationTimeout.setText(
- Utils.substitute(descriptor.deactivationTimeout, detailResolver));
- _deactivationTimeout.setEditable(isEditable);
-
- _allocatable.setSelected(descriptor.allocatable);
- _allocatable.setEnabled(isEditable);
-
- _applicationDistrib.setSelected(descriptor.applicationDistrib);
- _applicationDistrib.setEnabled(isEditable);
-
- _distrib.setEnabled(true);
- _distrib.setEditable(true);
- String icepatch = Utils.substitute(descriptor.distrib.icepatch,
- detailResolver);
- if(icepatch.equals(""))
- {
- _distrib.setSelectedItem(NO_DISTRIB);
- }
- else
- {
- _distrib.setSelectedItem(icepatch);
- }
- _distrib.setEnabled(isEditable);
- _distrib.setEditable(isEditable);
-
- _distribDirs.setList(descriptor.distrib.directories, detailResolver);
- _distribDirs.setEditable(isEditable);
-
- show(descriptor, isEditable);
+ ServerDescriptor descriptor = getServerDescriptor();
+ Utils.Resolver detailResolver = _mainEditor.getDetailResolver();
+
+ isEditable = isEditable && (detailResolver == null);
+
+ if(detailResolver != null)
+ {
+ _id.setText(detailResolver.find("server"));
+ }
+ else
+ {
+ _id.setText(descriptor.id);
+ }
+ _id.setEditable(isEditable);
+
+ _iceVersion.setText(
+ Utils.substitute(descriptor.iceVersion, detailResolver));
+ _iceVersion.setEditable(isEditable);
+
+ _exe.setText(
+ Utils.substitute(descriptor.exe, detailResolver));
+ _exe.setEditable(isEditable);
+ _pwd.setText(
+ Utils.substitute(descriptor.pwd, detailResolver));
+ _pwd.setEditable(isEditable);
+
+ _options.setList(descriptor.options, detailResolver);
+ _options.setEditable(isEditable);
+
+ _user.setText(
+ Utils.substitute(descriptor.user, detailResolver));
+ _user.setEditable(isEditable);
+
+ java.util.Map envMap = new java.util.TreeMap();
+ java.util.Iterator p = descriptor.envs.iterator();
+ while(p.hasNext())
+ {
+ String env = (String)p.next();
+ int equal = env.indexOf('=');
+ if(equal == -1 || equal == env.length() - 1)
+ {
+ envMap.put(env, "");
+ }
+ else
+ {
+ envMap.put(env.substring(0, equal),
+ env.substring(equal + 1));
+ }
+ }
+ _envs.set(envMap, detailResolver, isEditable);
+
+ String activation = Utils.substitute(descriptor.activation,
+ detailResolver);
+
+ _activation.setEnabled(true);
+ _activation.setEditable(true);
+ if(activation.equals(ALWAYS))
+ {
+ _activation.setSelectedItem(ALWAYS);
+ }
+ else if(activation.equals(MANUAL))
+ {
+ _activation.setSelectedItem(MANUAL);
+ }
+ else if(activation.equals(ON_DEMAND))
+ {
+ _activation.setSelectedItem(ON_DEMAND);
+ }
+ else if(activation.equals(SESSION))
+ {
+ _activation.setSelectedItem(SESSION);
+ }
+ else
+ {
+ _activation.setSelectedItem(activation);
+ }
+ _activation.setEnabled(isEditable);
+ _activation.setEditable(isEditable);
+
+ _activationTimeout.setText(
+ Utils.substitute(descriptor.activationTimeout, detailResolver));
+ _activationTimeout.setEditable(isEditable);
+
+ _deactivationTimeout.setText(
+ Utils.substitute(descriptor.deactivationTimeout, detailResolver));
+ _deactivationTimeout.setEditable(isEditable);
+
+ _allocatable.setSelected(descriptor.allocatable);
+ _allocatable.setEnabled(isEditable);
+
+ _applicationDistrib.setSelected(descriptor.applicationDistrib);
+ _applicationDistrib.setEnabled(isEditable);
+
+ _distrib.setEnabled(true);
+ _distrib.setEditable(true);
+ String icepatch = Utils.substitute(descriptor.distrib.icepatch,
+ detailResolver);
+ if(icepatch.equals(""))
+ {
+ _distrib.setSelectedItem(NO_DISTRIB);
+ }
+ else
+ {
+ _distrib.setSelectedItem(icepatch);
+ }
+ _distrib.setEnabled(isEditable);
+ _distrib.setEditable(isEditable);
+
+ _distribDirs.setList(descriptor.distrib.directories, detailResolver);
+ _distribDirs.setEditable(isEditable);
+
+ show(descriptor, isEditable);
}
static private final String ALWAYS = "always";
@@ -383,12 +383,12 @@ class ServerSubEditor extends CommunicatorSubEditor
static private final String SESSION = "session";
static private final Object NO_DISTRIB = new Object()
- {
- public String toString()
- {
- return "None selected";
- }
- };
+ {
+ public String toString()
+ {
+ return "None selected";
+ }
+ };
static private final String DEFAULT_DISTRIB = "${application}.IcePatch2/server";
diff --git a/java/src/IceGridGUI/Application/ServerTemplate.java b/java/src/IceGridGUI/Application/ServerTemplate.java
index 8c361c5a7d9..db630008f54 100755
--- a/java/src/IceGridGUI/Application/ServerTemplate.java
+++ b/java/src/IceGridGUI/Application/ServerTemplate.java
@@ -31,57 +31,57 @@ class ServerTemplate extends Communicator
static public TemplateDescriptor
copyDescriptor(TemplateDescriptor templateDescriptor)
{
- TemplateDescriptor copy = (TemplateDescriptor)
- templateDescriptor.clone();
+ TemplateDescriptor copy = (TemplateDescriptor)
+ templateDescriptor.clone();
- copy.descriptor = PlainServer.copyDescriptor(
- (ServerDescriptor)copy.descriptor);
- return copy;
+ copy.descriptor = PlainServer.copyDescriptor(
+ (ServerDescriptor)copy.descriptor);
+ return copy;
}
public Component getTreeCellRendererComponent(
- JTree tree,
- Object value,
- boolean sel,
- boolean expanded,
- boolean leaf,
- int row,
- boolean hasFocus)
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
{
- if(_cellRenderer == null)
- {
- _cellRenderer = new DefaultTreeCellRenderer();
- _plainIcon =
- Utils.getIcon("/icons/16x16/server_template.png");
- _iceboxIcon =
- Utils.getIcon("/icons/16x16/icebox_server_template.png");
- }
-
- if(_templateDescriptor.descriptor instanceof IceBoxDescriptor)
- {
- if(expanded)
- {
- _cellRenderer.setOpenIcon(_iceboxIcon);
- }
- else
- {
- _cellRenderer.setClosedIcon(_iceboxIcon);
- }
- }
- else
- {
- if(expanded)
- {
- _cellRenderer.setOpenIcon(_plainIcon);
- }
- else
- {
- _cellRenderer.setClosedIcon(_plainIcon);
- }
- }
-
- return _cellRenderer.getTreeCellRendererComponent(
- tree, value, sel, expanded, leaf, row, hasFocus);
+ if(_cellRenderer == null)
+ {
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _plainIcon =
+ Utils.getIcon("/icons/16x16/server_template.png");
+ _iceboxIcon =
+ Utils.getIcon("/icons/16x16/icebox_server_template.png");
+ }
+
+ if(_templateDescriptor.descriptor instanceof IceBoxDescriptor)
+ {
+ if(expanded)
+ {
+ _cellRenderer.setOpenIcon(_iceboxIcon);
+ }
+ else
+ {
+ _cellRenderer.setClosedIcon(_iceboxIcon);
+ }
+ }
+ else
+ {
+ if(expanded)
+ {
+ _cellRenderer.setOpenIcon(_plainIcon);
+ }
+ else
+ {
+ _cellRenderer.setClosedIcon(_plainIcon);
+ }
+ }
+
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
}
@@ -90,270 +90,270 @@ class ServerTemplate extends Communicator
//
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
- actions[COPY] = !_ephemeral;
-
- if(((TreeNode)_parent).getAvailableActions()[PASTE])
- {
- actions[PASTE] = true;
- }
- else
- {
- Object clipboard = getCoordinator().getClipboard();
- actions[PASTE] = clipboard != null &&
- ((isIceBox() && (clipboard instanceof ServiceInstanceDescriptor))
- || (!isIceBox() && (clipboard instanceof AdapterDescriptor
- || clipboard instanceof DbEnvDescriptor)));
- }
-
- actions[DELETE] = true;
-
- if(!_ephemeral)
- {
- actions[NEW_ADAPTER] = !_services.initialized();
- actions[NEW_SERVICE] = _services.initialized();
- actions[NEW_SERVICE_FROM_TEMPLATE] = _services.initialized();
- actions[NEW_DBENV] = _dbEnvs.initialized();
- }
-
- return actions;
+ boolean[] actions = new boolean[ACTION_COUNT];
+ actions[COPY] = !_ephemeral;
+
+ if(((TreeNode)_parent).getAvailableActions()[PASTE])
+ {
+ actions[PASTE] = true;
+ }
+ else
+ {
+ Object clipboard = getCoordinator().getClipboard();
+ actions[PASTE] = clipboard != null &&
+ ((isIceBox() && (clipboard instanceof ServiceInstanceDescriptor))
+ || (!isIceBox() && (clipboard instanceof AdapterDescriptor
+ || clipboard instanceof DbEnvDescriptor)));
+ }
+
+ actions[DELETE] = true;
+
+ if(!_ephemeral)
+ {
+ actions[NEW_ADAPTER] = !_services.initialized();
+ actions[NEW_SERVICE] = _services.initialized();
+ actions[NEW_SERVICE_FROM_TEMPLATE] = _services.initialized();
+ actions[NEW_DBENV] = _dbEnvs.initialized();
+ }
+
+ return actions;
}
public void copy()
{
- getCoordinator().setClipboard(copyDescriptor(_templateDescriptor));
- getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
+ getCoordinator().setClipboard(copyDescriptor(_templateDescriptor));
+ getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
}
public JPopupMenu getPopupMenu()
{
- ApplicationActions actions = getCoordinator().getActionsForPopup();
- if(_popup == null)
- {
- _popup = new JPopupMenu();
- _popup.add(actions.get(NEW_ADAPTER));
- _popup.add(actions.get(NEW_DBENV));
- _popup.add(actions.get(NEW_SERVICE));
- _popup.add(actions.get(NEW_SERVICE_FROM_TEMPLATE));
- }
- actions.setTarget(this);
- return _popup;
+ ApplicationActions actions = getCoordinator().getActionsForPopup();
+ if(_popup == null)
+ {
+ _popup = new JPopupMenu();
+ _popup.add(actions.get(NEW_ADAPTER));
+ _popup.add(actions.get(NEW_DBENV));
+ _popup.add(actions.get(NEW_SERVICE));
+ _popup.add(actions.get(NEW_SERVICE_FROM_TEMPLATE));
+ }
+ actions.setTarget(this);
+ return _popup;
}
public Editor getEditor()
{
- if(_editor == null)
- {
- _editor = (ServerTemplateEditor)getRoot().
- getEditor(ServerTemplateEditor.class, this);
- }
- _editor.show(this);
- return _editor;
+ if(_editor == null)
+ {
+ _editor = (ServerTemplateEditor)getRoot().
+ getEditor(ServerTemplateEditor.class, this);
+ }
+ _editor.show(this);
+ return _editor;
}
protected Editor createEditor()
{
- return new ServerTemplateEditor();
+ return new ServerTemplateEditor();
}
public void destroy()
{
- ServerTemplates serverTemplates = (ServerTemplates)_parent;
-
- if(_ephemeral)
- {
- serverTemplates.removeChild(this);
- }
- else
- {
- serverTemplates.removeDescriptor(_id);
- getRoot().removeServerInstances(_id);
- serverTemplates.removeChild(this);
- serverTemplates.getEditable().
- removeElement(_id, _editable, ServerTemplate.class);
- getRoot().updated();
- }
+ ServerTemplates serverTemplates = (ServerTemplates)_parent;
+
+ if(_ephemeral)
+ {
+ serverTemplates.removeChild(this);
+ }
+ else
+ {
+ serverTemplates.removeDescriptor(_id);
+ getRoot().removeServerInstances(_id);
+ serverTemplates.removeChild(this);
+ serverTemplates.getEditable().
+ removeElement(_id, _editable, ServerTemplate.class);
+ getRoot().updated();
+ }
}
public boolean isEphemeral()
{
- return _ephemeral;
+ return _ephemeral;
}
public Object getDescriptor()
{
- return _templateDescriptor;
+ return _templateDescriptor;
}
CommunicatorDescriptor getCommunicatorDescriptor()
{
- return _templateDescriptor.descriptor;
+ return _templateDescriptor.descriptor;
}
public Object saveDescriptor()
{
- //
- // Shallow copy
- //
- TemplateDescriptor clone = (TemplateDescriptor)_templateDescriptor.clone();
- clone.descriptor = (ServerDescriptor)_templateDescriptor.descriptor.clone();
- return clone;
+ //
+ // Shallow copy
+ //
+ TemplateDescriptor clone = (TemplateDescriptor)_templateDescriptor.clone();
+ clone.descriptor = (ServerDescriptor)_templateDescriptor.descriptor.clone();
+ return clone;
}
public void restoreDescriptor(Object savedDescriptor)
{
- TemplateDescriptor clone = (TemplateDescriptor)savedDescriptor;
- //
- // Keep the same object
- //
- _templateDescriptor.parameters = clone.parameters;
-
- PlainServer.shallowRestore((ServerDescriptor)clone.descriptor,
- (ServerDescriptor)_templateDescriptor.descriptor);
+ TemplateDescriptor clone = (TemplateDescriptor)savedDescriptor;
+ //
+ // Keep the same object
+ //
+ _templateDescriptor.parameters = clone.parameters;
+
+ PlainServer.shallowRestore((ServerDescriptor)clone.descriptor,
+ (ServerDescriptor)_templateDescriptor.descriptor);
}
//
// Application is needed to lookup service templates
//
ServerTemplate(boolean brandNew, ServerTemplates parent, String name, TemplateDescriptor descriptor)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- super(parent, name);
- _editable = new Editable(brandNew);
- _ephemeral = false;
- rebuild(descriptor);
+ super(parent, name);
+ _editable = new Editable(brandNew);
+ _ephemeral = false;
+ rebuild(descriptor);
}
ServerTemplate(ServerTemplates parent, String name, TemplateDescriptor descriptor)
{
- super(parent, name);
- _ephemeral = true;
- try
- {
- rebuild(descriptor);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
+ super(parent, name);
+ _ephemeral = true;
+ try
+ {
+ rebuild(descriptor);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
}
void write(XMLWriter writer) throws java.io.IOException
{
- if(!_ephemeral)
- {
- java.util.List attributes = new java.util.LinkedList();
- attributes.add(createAttribute("id", _id));
- writer.writeStartTag("server-template", attributes);
- writeParameters(writer, _templateDescriptor.parameters,
- _templateDescriptor.parameterDefaults);
-
- if(_templateDescriptor.descriptor instanceof IceBoxDescriptor)
- {
- IceBoxDescriptor descriptor = (IceBoxDescriptor)_templateDescriptor.descriptor;
-
- writer.writeStartTag("icebox",
- PlainServer.createAttributes(descriptor));
-
- if(descriptor.description.length() > 0)
- {
- writer.writeElement("description", descriptor.description);
- }
- PlainServer.writeOptions(writer, descriptor.options);
- PlainServer.writeEnvs(writer, descriptor.envs);
-
- writePropertySet(writer, "", "", descriptor.propertySet, descriptor.adapters, descriptor.logs);
- writeLogs(writer, descriptor.logs, descriptor.propertySet.properties);
- writeDistribution(writer, descriptor.distrib);
-
- _adapters.write(writer, descriptor.propertySet.properties);
- _services.write(writer);
- writer.writeEndTag("icebox");
- }
- else
- {
- ServerDescriptor descriptor = (ServerDescriptor)_templateDescriptor.descriptor;
-
- writer.writeStartTag("server",
- PlainServer.createAttributes(descriptor));
-
- if(descriptor.description.length() > 0)
- {
- writer.writeElement("description", descriptor.description);
- }
- PlainServer.writeOptions(writer, descriptor.options);
- PlainServer.writeEnvs(writer, descriptor.envs);
-
- writePropertySet(writer, descriptor.propertySet, descriptor.adapters, descriptor.logs);
- writeLogs(writer, descriptor.logs, descriptor.propertySet.properties);
- writeDistribution(writer, descriptor.distrib);
-
- _adapters.write(writer, descriptor.propertySet.properties);
- _dbEnvs.write(writer);
- writer.writeEndTag("server");
- }
- writer.writeEndTag("server-template");
- }
+ if(!_ephemeral)
+ {
+ java.util.List attributes = new java.util.LinkedList();
+ attributes.add(createAttribute("id", _id));
+ writer.writeStartTag("server-template", attributes);
+ writeParameters(writer, _templateDescriptor.parameters,
+ _templateDescriptor.parameterDefaults);
+
+ if(_templateDescriptor.descriptor instanceof IceBoxDescriptor)
+ {
+ IceBoxDescriptor descriptor = (IceBoxDescriptor)_templateDescriptor.descriptor;
+
+ writer.writeStartTag("icebox",
+ PlainServer.createAttributes(descriptor));
+
+ if(descriptor.description.length() > 0)
+ {
+ writer.writeElement("description", descriptor.description);
+ }
+ PlainServer.writeOptions(writer, descriptor.options);
+ PlainServer.writeEnvs(writer, descriptor.envs);
+
+ writePropertySet(writer, "", "", descriptor.propertySet, descriptor.adapters, descriptor.logs);
+ writeLogs(writer, descriptor.logs, descriptor.propertySet.properties);
+ writeDistribution(writer, descriptor.distrib);
+
+ _adapters.write(writer, descriptor.propertySet.properties);
+ _services.write(writer);
+ writer.writeEndTag("icebox");
+ }
+ else
+ {
+ ServerDescriptor descriptor = (ServerDescriptor)_templateDescriptor.descriptor;
+
+ writer.writeStartTag("server",
+ PlainServer.createAttributes(descriptor));
+
+ if(descriptor.description.length() > 0)
+ {
+ writer.writeElement("description", descriptor.description);
+ }
+ PlainServer.writeOptions(writer, descriptor.options);
+ PlainServer.writeEnvs(writer, descriptor.envs);
+
+ writePropertySet(writer, descriptor.propertySet, descriptor.adapters, descriptor.logs);
+ writeLogs(writer, descriptor.logs, descriptor.propertySet.properties);
+ writeDistribution(writer, descriptor.distrib);
+
+ _adapters.write(writer, descriptor.propertySet.properties);
+ _dbEnvs.write(writer);
+ writer.writeEndTag("server");
+ }
+ writer.writeEndTag("server-template");
+ }
}
boolean isIceBox()
{
- return _templateDescriptor.descriptor instanceof IceBoxDescriptor;
+ return _templateDescriptor.descriptor instanceof IceBoxDescriptor;
}
void rebuild(TemplateDescriptor descriptor) throws UpdateFailedException
{
- _templateDescriptor = descriptor;
-
- _adapters.clear();
- _dbEnvs.clear();
- _services.clear();
-
- if(!_ephemeral)
- {
- _adapters.init(_templateDescriptor.descriptor.adapters);
-
- if(isIceBox())
- {
- IceBoxDescriptor iceBoxDescriptor =
- (IceBoxDescriptor)_templateDescriptor.descriptor;
-
- _services.init(iceBoxDescriptor.services);
-
- assert _templateDescriptor.descriptor.dbEnvs.size() == 0;
- }
- else
- {
- _dbEnvs.init(_templateDescriptor.descriptor.dbEnvs);
- }
- }
+ _templateDescriptor = descriptor;
+
+ _adapters.clear();
+ _dbEnvs.clear();
+ _services.clear();
+
+ if(!_ephemeral)
+ {
+ _adapters.init(_templateDescriptor.descriptor.adapters);
+
+ if(isIceBox())
+ {
+ IceBoxDescriptor iceBoxDescriptor =
+ (IceBoxDescriptor)_templateDescriptor.descriptor;
+
+ _services.init(iceBoxDescriptor.services);
+
+ assert _templateDescriptor.descriptor.dbEnvs.size() == 0;
+ }
+ else
+ {
+ _dbEnvs.init(_templateDescriptor.descriptor.dbEnvs);
+ }
+ }
}
void rebuild() throws UpdateFailedException
{
- rebuild(_templateDescriptor);
+ rebuild(_templateDescriptor);
}
void commit()
{
- _editable.commit();
+ _editable.commit();
}
Editable getEditable()
{
- return _editable;
+ return _editable;
}
Editable getEnclosingEditable()
{
- return _editable;
+ return _editable;
}
java.util.List findInstances()
{
- return getRoot().findServerInstances(_id);
+ return getRoot().findServerInstances(_id);
}
private TemplateDescriptor _templateDescriptor;
diff --git a/java/src/IceGridGUI/Application/ServerTemplateEditor.java b/java/src/IceGridGUI/Application/ServerTemplateEditor.java
index 5eef3321f8e..91a7203d926 100755
--- a/java/src/IceGridGUI/Application/ServerTemplateEditor.java
+++ b/java/src/IceGridGUI/Application/ServerTemplateEditor.java
@@ -14,50 +14,50 @@ class ServerTemplateEditor extends TemplateEditor
{
ServerTemplateEditor()
{
- _subEditor = new ServerSubEditor(this);
+ _subEditor = new ServerSubEditor(this);
}
void writeDescriptor()
{
- super.writeDescriptor();
- _subEditor.writeDescriptor();
- }
+ super.writeDescriptor();
+ _subEditor.writeDescriptor();
+ }
boolean isSimpleUpdate()
{
- return super.isSimpleUpdate() && _subEditor.isSimpleUpdate();
+ return super.isSimpleUpdate() && _subEditor.isSimpleUpdate();
}
protected void appendProperties(DefaultFormBuilder builder)
{
- super.appendProperties(builder);
- builder.appendSeparator();
- builder.nextLine();
- _subEditor.appendProperties(builder);
+ super.appendProperties(builder);
+ builder.appendSeparator();
+ builder.nextLine();
+ _subEditor.appendProperties(builder);
}
protected void buildPropertiesPanel()
{
- super.buildPropertiesPanel();
- _propertiesPanel.setName("Server Template Properties");
+ super.buildPropertiesPanel();
+ _propertiesPanel.setName("Server Template Properties");
}
protected boolean validate()
{
- return super.validate() && _subEditor.validate();
+ return super.validate() && _subEditor.validate();
}
void show(ServerTemplate t)
{
- detectUpdates(false);
- _target = t;
-
- super.show();
- _subEditor.show(true);
+ detectUpdates(false);
+ _target = t;
+
+ super.show();
+ _subEditor.show(true);
- _applyButton.setEnabled(t.isEphemeral());
- _discardButton.setEnabled(t.isEphemeral());
- detectUpdates(true);
+ _applyButton.setEnabled(t.isEphemeral());
+ _discardButton.setEnabled(t.isEphemeral());
+ detectUpdates(true);
}
private ServerSubEditor _subEditor;
diff --git a/java/src/IceGridGUI/Application/ServerTemplates.java b/java/src/IceGridGUI/Application/ServerTemplates.java
index e7da327df5a..0b2374d930f 100755
--- a/java/src/IceGridGUI/Application/ServerTemplates.java
+++ b/java/src/IceGridGUI/Application/ServerTemplates.java
@@ -19,17 +19,17 @@ class ServerTemplates extends Templates
static public java.util.Map
copyDescriptors(java.util.Map descriptors)
{
- java.util.Map copy = new java.util.HashMap();
- java.util.Iterator p = descriptors.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
-
- copy.put(entry.getKey(),
- ServerTemplate.copyDescriptor(
- (TemplateDescriptor)entry.getValue()));
- }
- return copy;
+ java.util.Map copy = new java.util.HashMap();
+ java.util.Iterator p = descriptors.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+
+ copy.put(entry.getKey(),
+ ServerTemplate.copyDescriptor(
+ (TemplateDescriptor)entry.getValue()));
+ }
+ return copy;
}
//
@@ -37,70 +37,70 @@ class ServerTemplates extends Templates
//
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
- actions[NEW_TEMPLATE_SERVER] = true;
- actions[NEW_TEMPLATE_SERVER_ICEBOX] = true;
-
- Object clipboard = getCoordinator().getClipboard();
- if(clipboard != null && clipboard instanceof TemplateDescriptor)
- {
- TemplateDescriptor d = (TemplateDescriptor)clipboard;
- actions[PASTE] = d.descriptor instanceof ServerDescriptor;
- }
- return actions;
+ boolean[] actions = new boolean[ACTION_COUNT];
+ actions[NEW_TEMPLATE_SERVER] = true;
+ actions[NEW_TEMPLATE_SERVER_ICEBOX] = true;
+
+ Object clipboard = getCoordinator().getClipboard();
+ if(clipboard != null && clipboard instanceof TemplateDescriptor)
+ {
+ TemplateDescriptor d = (TemplateDescriptor)clipboard;
+ actions[PASTE] = d.descriptor instanceof ServerDescriptor;
+ }
+ return actions;
}
public JPopupMenu getPopupMenu()
{
- ApplicationActions actions = getCoordinator().getActionsForPopup();
- if(_popup == null)
- {
- _popup = new JPopupMenu();
- _popup.add(actions.get(NEW_TEMPLATE_SERVER));
- _popup.add(actions.get(NEW_TEMPLATE_SERVER_ICEBOX));
- }
- actions.setTarget(this);
- return _popup;
+ ApplicationActions actions = getCoordinator().getActionsForPopup();
+ if(_popup == null)
+ {
+ _popup = new JPopupMenu();
+ _popup.add(actions.get(NEW_TEMPLATE_SERVER));
+ _popup.add(actions.get(NEW_TEMPLATE_SERVER_ICEBOX));
+ }
+ actions.setTarget(this);
+ return _popup;
}
public void newTemplateServer()
{
- newServerTemplate(new TemplateDescriptor(
- PlainServer.newServerDescriptor(),
- new java.util.LinkedList(),
- new java.util.TreeMap()));
+ newServerTemplate(new TemplateDescriptor(
+ PlainServer.newServerDescriptor(),
+ new java.util.LinkedList(),
+ new java.util.TreeMap()));
}
public void newTemplateServerIceBox()
{
- newServerTemplate(new TemplateDescriptor(
- PlainServer.newIceBoxDescriptor(),
- new java.util.LinkedList(),
- new java.util.TreeMap()));
+ newServerTemplate(new TemplateDescriptor(
+ PlainServer.newIceBoxDescriptor(),
+ new java.util.LinkedList(),
+ new java.util.TreeMap()));
}
public void paste()
{
- Object descriptor = getCoordinator().getClipboard();
- TemplateDescriptor td = (TemplateDescriptor)descriptor;
- newServerTemplate(td);
+ Object descriptor = getCoordinator().getClipboard();
+ TemplateDescriptor td = (TemplateDescriptor)descriptor;
+ newServerTemplate(td);
}
ServerTemplates(Root parent, java.util.Map descriptors)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- super(parent, "Server templates");
+ super(parent, "Server templates");
- _descriptors = descriptors;
+ _descriptors = descriptors;
- java.util.Iterator p = _descriptors.entrySet().iterator();
-
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- insertChild(new ServerTemplate(false, this,
- (String)entry.getKey(),
- (TemplateDescriptor)entry.getValue()),
- false);
- }
+ java.util.Iterator p = _descriptors.entrySet().iterator();
+
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ insertChild(new ServerTemplate(false, this,
+ (String)entry.getKey(),
+ (TemplateDescriptor)entry.getValue()),
+ false);
+ }
}
//
@@ -108,165 +108,165 @@ class ServerTemplates extends Templates
//
Utils.Resolver getResolver()
{
- return null;
+ return null;
}
java.util.Map getUpdates()
{
- java.util.Map updates = new java.util.HashMap();
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- ServerTemplate t = (ServerTemplate)p.next();
- if(t.getEditable().isNew() || t.getEditable().isModified())
- {
- updates.put(t.getId(), t.getDescriptor());
- }
- }
- return updates;
+ java.util.Map updates = new java.util.HashMap();
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ ServerTemplate t = (ServerTemplate)p.next();
+ if(t.getEditable().isNew() || t.getEditable().isModified())
+ {
+ updates.put(t.getId(), t.getDescriptor());
+ }
+ }
+ return updates;
}
void commit()
{
- _editable.commit();
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- ServerTemplate st = (ServerTemplate)p.next();
- st.commit();
- }
+ _editable.commit();
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ ServerTemplate st = (ServerTemplate)p.next();
+ st.commit();
+ }
}
java.util.List findServiceInstances(String template)
{
- java.util.List result = new java.util.LinkedList();
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- ServerTemplate t = (ServerTemplate)p.next();
- result.addAll(t.findServiceInstances(template));
- }
- return result;
+ java.util.List result = new java.util.LinkedList();
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ ServerTemplate t = (ServerTemplate)p.next();
+ result.addAll(t.findServiceInstances(template));
+ }
+ return result;
}
void removeServiceInstances(String template)
{
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- ServerTemplate t = (ServerTemplate)p.next();
- t.removeServiceInstances(template);
- }
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ ServerTemplate t = (ServerTemplate)p.next();
+ t.removeServiceInstances(template);
+ }
}
void newServerTemplate(TemplateDescriptor descriptor)
{
- String id;
- if(descriptor.descriptor instanceof IceBoxDescriptor)
- {
- id = makeNewChildId("NewIceBoxTemplate");
- }
- else
- {
- id = makeNewChildId("NewServerTemplate");
- }
-
- ServerTemplate t = new ServerTemplate(this, id, descriptor);
- try
- {
- insertChild(t, true);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
- getRoot().setSelectedNode(t);
+ String id;
+ if(descriptor.descriptor instanceof IceBoxDescriptor)
+ {
+ id = makeNewChildId("NewIceBoxTemplate");
+ }
+ else
+ {
+ id = makeNewChildId("NewServerTemplate");
+ }
+
+ ServerTemplate t = new ServerTemplate(this, id, descriptor);
+ try
+ {
+ insertChild(t, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
+ getRoot().setSelectedNode(t);
}
void tryAdd(String newId, TemplateDescriptor descriptor)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- insertChild(new ServerTemplate(true, this, newId, descriptor),
- true);
- _descriptors.put(newId, descriptor);
+ insertChild(new ServerTemplate(true, this, newId, descriptor),
+ true);
+ _descriptors.put(newId, descriptor);
}
void update(java.util.Map updates, String[] removeTemplates,
- java.util.Set serviceTemplates)
- throws UpdateFailedException
+ java.util.Set serviceTemplates)
+ throws UpdateFailedException
{
- //
- // Note: _descriptors is updated by Root
- //
-
- Root root = getRoot();
+ //
+ // Note: _descriptors is updated by Root
+ //
+
+ Root root = getRoot();
- //
- // One big set of removes
- //
- removeChildren(removeTemplates);
+ //
+ // One big set of removes
+ //
+ removeChildren(removeTemplates);
- //
- // One big set of updates, followed by inserts
- //
- java.util.Vector newChildren = new java.util.Vector();
- java.util.Vector updatedChildren = new java.util.Vector();
-
- java.util.Iterator p = updates.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- String name = (String)entry.getKey();
- TemplateDescriptor templateDescriptor
- = (TemplateDescriptor)entry.getValue();
- ServerTemplate child = (ServerTemplate)findChild(name);
- if(child == null)
- {
- newChildren.add(new ServerTemplate(false, this, name, templateDescriptor));
- }
- else
- {
- child.rebuild(templateDescriptor);
- updatedChildren.add(child);
- }
- }
-
- //
- // Rebuild template affected by service template updates
- //
- p = serviceTemplates.iterator();
- while(p.hasNext())
- {
- java.util.List serviceInstances =
- findServiceInstances((String)p.next());
- java.util.Iterator q = serviceInstances.iterator();
- while(q.hasNext())
- {
- ServiceInstance service = (ServiceInstance)q.next();
- ServerTemplate serverTemplate =
- (ServerTemplate)service.getParent();
-
- if(!updatedChildren.contains(serverTemplate) &&
- !newChildren.contains(serverTemplate))
- {
- serverTemplate.rebuild();
- updatedChildren.add(serverTemplate);
- }
- }
- }
-
- childrenChanged(updatedChildren);
- insertChildren(newChildren, true);
+ //
+ // One big set of updates, followed by inserts
+ //
+ java.util.Vector newChildren = new java.util.Vector();
+ java.util.Vector updatedChildren = new java.util.Vector();
+
+ java.util.Iterator p = updates.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ String name = (String)entry.getKey();
+ TemplateDescriptor templateDescriptor
+ = (TemplateDescriptor)entry.getValue();
+ ServerTemplate child = (ServerTemplate)findChild(name);
+ if(child == null)
+ {
+ newChildren.add(new ServerTemplate(false, this, name, templateDescriptor));
+ }
+ else
+ {
+ child.rebuild(templateDescriptor);
+ updatedChildren.add(child);
+ }
+ }
+
+ //
+ // Rebuild template affected by service template updates
+ //
+ p = serviceTemplates.iterator();
+ while(p.hasNext())
+ {
+ java.util.List serviceInstances =
+ findServiceInstances((String)p.next());
+ java.util.Iterator q = serviceInstances.iterator();
+ while(q.hasNext())
+ {
+ ServiceInstance service = (ServiceInstance)q.next();
+ ServerTemplate serverTemplate =
+ (ServerTemplate)service.getParent();
+
+ if(!updatedChildren.contains(serverTemplate) &&
+ !newChildren.contains(serverTemplate))
+ {
+ serverTemplate.rebuild();
+ updatedChildren.add(serverTemplate);
+ }
+ }
+ }
+
+ childrenChanged(updatedChildren);
+ insertChildren(newChildren, true);
}
void removeDescriptor(String id)
{
- _descriptors.remove(id);
+ _descriptors.remove(id);
}
Object getDescriptor()
{
- return _descriptors;
+ return _descriptors;
}
private java.util.Map _descriptors;
diff --git a/java/src/IceGridGUI/Application/ServiceInstance.java b/java/src/IceGridGUI/Application/ServiceInstance.java
index d5a93f5e7aa..00b2af1a22d 100755
--- a/java/src/IceGridGUI/Application/ServiceInstance.java
+++ b/java/src/IceGridGUI/Application/ServiceInstance.java
@@ -21,49 +21,49 @@ class ServiceInstance extends TreeNode implements Service, Cloneable
static public ServiceInstanceDescriptor
copyDescriptor(ServiceInstanceDescriptor instanceDescriptor)
{
- ServiceInstanceDescriptor copy = (ServiceInstanceDescriptor)
- instanceDescriptor.clone();
-
- copy.propertySet = PropertySet.copyDescriptor(copy.propertySet);
-
- if(copy.descriptor != null)
- {
- copy.descriptor = PlainService.copyDescriptor((ServiceDescriptor)copy.descriptor);
- }
- return copy;
+ ServiceInstanceDescriptor copy = (ServiceInstanceDescriptor)
+ instanceDescriptor.clone();
+
+ copy.propertySet = PropertySet.copyDescriptor(copy.propertySet);
+
+ if(copy.descriptor != null)
+ {
+ copy.descriptor = PlainService.copyDescriptor((ServiceDescriptor)copy.descriptor);
+ }
+ return copy;
}
static public java.util.List
copyDescriptors(java.util.List descriptors)
{
- java.util.List copy = new java.util.LinkedList();
- java.util.Iterator p = descriptors.iterator();
- while(p.hasNext())
- {
- copy.add(copyDescriptor(
- (ServiceInstanceDescriptor)p.next()));
- }
- return copy;
+ java.util.List copy = new java.util.LinkedList();
+ java.util.Iterator p = descriptors.iterator();
+ while(p.hasNext())
+ {
+ copy.add(copyDescriptor(
+ (ServiceInstanceDescriptor)p.next()));
+ }
+ return copy;
}
public Component getTreeCellRendererComponent(
- JTree tree,
- Object value,
- boolean sel,
- boolean expanded,
- boolean leaf,
- int row,
- boolean hasFocus)
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
{
- if(_cellRenderer == null)
- {
- _cellRenderer = new DefaultTreeCellRenderer();
- _cellRenderer.setLeafIcon(
- Utils.getIcon("/icons/16x16/service.png"));
- }
-
- return _cellRenderer.getTreeCellRendererComponent(
- tree, value, sel, expanded, leaf, row, hasFocus);
+ if(_cellRenderer == null)
+ {
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _cellRenderer.setLeafIcon(
+ Utils.getIcon("/icons/16x16/service.png"));
+ }
+
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
}
//
@@ -71,283 +71,283 @@ class ServiceInstance extends TreeNode implements Service, Cloneable
//
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
- actions[COPY] = !_ephemeral;
-
- if(((TreeNode)_parent).getAvailableActions()[PASTE])
- {
- actions[PASTE] = true;
- }
-
- actions[DELETE] = true;
-
- if(_parent instanceof Server && !_ephemeral)
- {
- actions[SHOW_VARS] = true;
- actions[SUBSTITUTE_VARS] = true;
- }
-
- actions[MOVE_UP] = canMove(true);
- actions[MOVE_DOWN] = canMove(false);
- return actions;
+ boolean[] actions = new boolean[ACTION_COUNT];
+ actions[COPY] = !_ephemeral;
+
+ if(((TreeNode)_parent).getAvailableActions()[PASTE])
+ {
+ actions[PASTE] = true;
+ }
+
+ actions[DELETE] = true;
+
+ if(_parent instanceof Server && !_ephemeral)
+ {
+ actions[SHOW_VARS] = true;
+ actions[SUBSTITUTE_VARS] = true;
+ }
+
+ actions[MOVE_UP] = canMove(true);
+ actions[MOVE_DOWN] = canMove(false);
+ return actions;
}
public JPopupMenu getPopupMenu()
{
- ApplicationActions actions = getCoordinator().getActionsForPopup();
- if(_popup == null)
- {
- _popup = new JPopupMenu();
- _popup.add(actions.get(MOVE_UP));
- _popup.add(actions.get(MOVE_DOWN));
- }
- actions.setTarget(this);
- return _popup;
+ ApplicationActions actions = getCoordinator().getActionsForPopup();
+ if(_popup == null)
+ {
+ _popup = new JPopupMenu();
+ _popup.add(actions.get(MOVE_UP));
+ _popup.add(actions.get(MOVE_DOWN));
+ }
+ actions.setTarget(this);
+ return _popup;
}
public void copy()
{
- getCoordinator().setClipboard(copyDescriptor(_descriptor));
- getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
+ getCoordinator().setClipboard(copyDescriptor(_descriptor));
+ getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
}
public void paste()
{
- ((TreeNode)_parent).paste();
+ ((TreeNode)_parent).paste();
}
public void moveUp()
{
- move(true);
+ move(true);
}
public void moveDown()
{
- move(false);
+ move(false);
}
public Object getDescriptor()
{
- return _descriptor;
+ return _descriptor;
}
public Object saveDescriptor()
{
- //
- // Must be a shallow copy
- //
- ServiceInstanceDescriptor saved =
- (ServiceInstanceDescriptor)_descriptor.clone();
-
-
- assert saved.descriptor == null;
- return saved;
+ //
+ // Must be a shallow copy
+ //
+ ServiceInstanceDescriptor saved =
+ (ServiceInstanceDescriptor)_descriptor.clone();
+
+
+ assert saved.descriptor == null;
+ return saved;
}
public void restoreDescriptor(Object savedDescriptor)
{
- ServiceInstanceDescriptor sd = (ServiceInstanceDescriptor)savedDescriptor;
- _descriptor.template = sd.template;
- _descriptor.parameterValues = sd.parameterValues;
- _descriptor.propertySet = sd.propertySet;
+ ServiceInstanceDescriptor sd = (ServiceInstanceDescriptor)savedDescriptor;
+ _descriptor.template = sd.template;
+ _descriptor.parameterValues = sd.parameterValues;
+ _descriptor.propertySet = sd.propertySet;
}
public void destroy()
{
- ((Communicator)_parent).getServices().destroyChild(this);
+ ((Communicator)_parent).getServices().destroyChild(this);
}
public Editor getEditor()
{
- if(_editor == null)
- {
- _editor = (ServiceInstanceEditor)getRoot().
- getEditor(ServiceInstanceEditor.class, this);
- }
- _editor.show(this);
- return _editor;
+ if(_editor == null)
+ {
+ _editor = (ServiceInstanceEditor)getRoot().
+ getEditor(ServiceInstanceEditor.class, this);
+ }
+ _editor.show(this);
+ return _editor;
}
protected Editor createEditor()
{
- return new ServiceInstanceEditor();
+ return new ServiceInstanceEditor();
}
public String toString()
{
- if(_displayString != null)
- {
- return _displayString;
- }
- else
- {
- return super.toString();
- }
+ if(_displayString != null)
+ {
+ return _displayString;
+ }
+ else
+ {
+ return super.toString();
+ }
}
private boolean canMove(boolean up)
{
- if(_ephemeral)
- {
- return false;
- }
- else
- {
- return ((Communicator)_parent).getServices().canMove(this, up);
- }
+ if(_ephemeral)
+ {
+ return false;
+ }
+ else
+ {
+ return ((Communicator)_parent).getServices().canMove(this, up);
+ }
}
private void move(boolean up)
{
- assert canMove(up);
- ((Communicator)_parent).getServices().move(this, up);
+ assert canMove(up);
+ ((Communicator)_parent).getServices().move(this, up);
}
Editable getEnclosingEditable()
{
- return ((Communicator)_parent).getEnclosingEditable();
+ return ((Communicator)_parent).getEnclosingEditable();
}
static private class Backup
{
- java.util.Map parameterValues;
- ServiceInstance clone;
+ java.util.Map parameterValues;
+ ServiceInstance clone;
}
public Object rebuild(java.util.List editables)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- Backup backup = new Backup();
-
- //
- // Fix-up _descriptor if necessary
- //
- if(_descriptor.template.length() > 0)
- {
- TemplateDescriptor templateDescriptor
- = getRoot().findServiceTemplateDescriptor(_descriptor.template);
-
- java.util.Set parameters = new java.util.HashSet(templateDescriptor.parameters);
- if(!parameters.equals(_descriptor.parameterValues.keySet()))
- {
- backup.parameterValues = _descriptor.parameterValues;
- _descriptor.parameterValues = Editor.makeParameterValues(
- _descriptor.parameterValues, templateDescriptor.parameters);
- editables.add(getEnclosingEditable());
- }
- }
-
- Communicator communicator = (Communicator)_parent;
- Communicator.Services services = communicator.getServices();
- ServiceInstance newService = null;
-
- try
- {
- newService = (ServiceInstance)services.createChild(_descriptor);
- }
- catch(UpdateFailedException e)
- {
- if(backup.parameterValues != null)
- {
- _descriptor.parameterValues = backup.parameterValues;
- }
- throw e;
- }
-
- try
- {
- backup.clone = (ServiceInstance)clone();
- }
- catch(CloneNotSupportedException e)
- {
- assert false;
- }
-
- reset(newService);
-
- if(backup.parameterValues != null)
- {
- editables.add(getEnclosingEditable());
- }
- getRoot().getTreeModel().nodeChanged(this);
- return backup;
+ Backup backup = new Backup();
+
+ //
+ // Fix-up _descriptor if necessary
+ //
+ if(_descriptor.template.length() > 0)
+ {
+ TemplateDescriptor templateDescriptor
+ = getRoot().findServiceTemplateDescriptor(_descriptor.template);
+
+ java.util.Set parameters = new java.util.HashSet(templateDescriptor.parameters);
+ if(!parameters.equals(_descriptor.parameterValues.keySet()))
+ {
+ backup.parameterValues = _descriptor.parameterValues;
+ _descriptor.parameterValues = Editor.makeParameterValues(
+ _descriptor.parameterValues, templateDescriptor.parameters);
+ editables.add(getEnclosingEditable());
+ }
+ }
+
+ Communicator communicator = (Communicator)_parent;
+ Communicator.Services services = communicator.getServices();
+ ServiceInstance newService = null;
+
+ try
+ {
+ newService = (ServiceInstance)services.createChild(_descriptor);
+ }
+ catch(UpdateFailedException e)
+ {
+ if(backup.parameterValues != null)
+ {
+ _descriptor.parameterValues = backup.parameterValues;
+ }
+ throw e;
+ }
+
+ try
+ {
+ backup.clone = (ServiceInstance)clone();
+ }
+ catch(CloneNotSupportedException e)
+ {
+ assert false;
+ }
+
+ reset(newService);
+
+ if(backup.parameterValues != null)
+ {
+ editables.add(getEnclosingEditable());
+ }
+ getRoot().getTreeModel().nodeChanged(this);
+ return backup;
}
public void restore(Object backupObj)
{
- Backup backup = (Backup)backupObj;
-
- if(backup.parameterValues != null)
- {
- _descriptor.parameterValues = backup.parameterValues;
- }
-
- reset(backup.clone);
- getRoot().getTreeModel().nodeChanged(this);
+ Backup backup = (Backup)backupObj;
+
+ if(backup.parameterValues != null)
+ {
+ _descriptor.parameterValues = backup.parameterValues;
+ }
+
+ reset(backup.clone);
+ getRoot().getTreeModel().nodeChanged(this);
}
private void reset(ServiceInstance from)
{
- _id = from._id;
- _displayString = from._displayString;
- _resolver = from._resolver;
+ _id = from._id;
+ _displayString = from._displayString;
+ _resolver = from._resolver;
}
ServiceInstance(Communicator parent,
- String name,
- String displayString,
- ServiceInstanceDescriptor instanceDescriptor,
- Utils.Resolver resolver)
- throws UpdateFailedException
+ String name,
+ String displayString,
+ ServiceInstanceDescriptor instanceDescriptor,
+ Utils.Resolver resolver)
+ throws UpdateFailedException
{
- super(parent, name);
- _displayString = displayString;
- _descriptor = instanceDescriptor;
- _ephemeral = false;
- _resolver = resolver;
+ super(parent, name);
+ _displayString = displayString;
+ _descriptor = instanceDescriptor;
+ _ephemeral = false;
+ _resolver = resolver;
}
//
// New temporary object
//
ServiceInstance(Communicator parent, String name,
- ServiceInstanceDescriptor instanceDescriptor)
+ ServiceInstanceDescriptor instanceDescriptor)
{
- super(parent, name);
- _descriptor = instanceDescriptor;
- _ephemeral = true;
+ super(parent, name);
+ _descriptor = instanceDescriptor;
+ _ephemeral = true;
}
void write(XMLWriter writer) throws java.io.IOException
{
- if(!_ephemeral)
- {
- TemplateDescriptor templateDescriptor
- = getRoot().findServiceTemplateDescriptor(_descriptor.template);
-
- java.util.LinkedList attributes = parameterValuesToAttributes(
- _descriptor.parameterValues, templateDescriptor.parameters);
- attributes.addFirst(createAttribute("template", _descriptor.template));
-
- if(_descriptor.propertySet.references.length == 0 &&
- _descriptor.propertySet.properties.size() == 0)
- {
- writer.writeElement("service-instance", attributes);
- }
- else
- {
- writer.writeStartTag("service-instance", attributes);
- writePropertySet(writer, _descriptor.propertySet, null, null);
- writer.writeEndTag("service-instance");
- }
- }
+ if(!_ephemeral)
+ {
+ TemplateDescriptor templateDescriptor
+ = getRoot().findServiceTemplateDescriptor(_descriptor.template);
+
+ java.util.LinkedList attributes = parameterValuesToAttributes(
+ _descriptor.parameterValues, templateDescriptor.parameters);
+ attributes.addFirst(createAttribute("template", _descriptor.template));
+
+ if(_descriptor.propertySet.references.length == 0 &&
+ _descriptor.propertySet.properties.size() == 0)
+ {
+ writer.writeElement("service-instance", attributes);
+ }
+ else
+ {
+ writer.writeStartTag("service-instance", attributes);
+ writePropertySet(writer, _descriptor.propertySet, null, null);
+ writer.writeEndTag("service-instance");
+ }
+ }
}
Utils.Resolver getResolver()
{
- return _resolver;
+ return _resolver;
}
public boolean isEphemeral()
{
- return _ephemeral;
+ return _ephemeral;
}
private ServiceInstanceDescriptor _descriptor;
diff --git a/java/src/IceGridGUI/Application/ServiceInstanceEditor.java b/java/src/IceGridGUI/Application/ServiceInstanceEditor.java
index 489de0884f4..bf55a13611a 100755
--- a/java/src/IceGridGUI/Application/ServiceInstanceEditor.java
+++ b/java/src/IceGridGUI/Application/ServiceInstanceEditor.java
@@ -30,35 +30,35 @@ class ServiceInstanceEditor extends CommunicatorChildEditor
{
ServiceInstanceEditor()
{
- //
- // Template
- //
- Action gotoTemplate = new AbstractAction(
- "", Utils.getIcon("/icons/16x16/goto.png"))
- {
- public void actionPerformed(ActionEvent e)
- {
- TreeNode t = (TreeNode)_template.getSelectedItem();
- if(t != null)
- {
- t.getRoot().setSelectedNode(t);
- }
- }
- };
- gotoTemplate.putValue(Action.SHORT_DESCRIPTION,
- "Goto this service template");
- _templateButton = new JButton(gotoTemplate);
-
- _parameters = new ParameterValuesField(this);
-
- _propertySets.getDocument().addDocumentListener(_updateListener);
- _propertySets.setToolTipText("Property Set References");
- _properties = new PropertiesField(this);
+ //
+ // Template
+ //
+ Action gotoTemplate = new AbstractAction(
+ "", Utils.getIcon("/icons/16x16/goto.png"))
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ TreeNode t = (TreeNode)_template.getSelectedItem();
+ if(t != null)
+ {
+ t.getRoot().setSelectedNode(t);
+ }
+ }
+ };
+ gotoTemplate.putValue(Action.SHORT_DESCRIPTION,
+ "Goto this service template");
+ _templateButton = new JButton(gotoTemplate);
+
+ _parameters = new ParameterValuesField(this);
+
+ _propertySets.getDocument().addDocumentListener(_updateListener);
+ _propertySets.setToolTipText("Property Set References");
+ _properties = new PropertiesField(this);
}
ServiceInstanceDescriptor getDescriptor()
{
- return (ServiceInstanceDescriptor)_target.getDescriptor();
+ return (ServiceInstanceDescriptor)_target.getDescriptor();
}
//
@@ -66,168 +66,168 @@ class ServiceInstanceEditor extends CommunicatorChildEditor
//
Utils.Resolver getDetailResolver()
{
- ServiceInstance service = (ServiceInstance)_target;
- if(service.getCoordinator().substitute())
- {
- return service.getResolver();
- }
- else
- {
- return null;
- }
+ ServiceInstance service = (ServiceInstance)_target;
+ if(service.getCoordinator().substitute())
+ {
+ return service.getResolver();
+ }
+ else
+ {
+ return null;
+ }
}
void writeDescriptor()
{
- ServiceInstanceDescriptor descriptor = getDescriptor();
- descriptor.template = ((ServiceTemplate)_template.getSelectedItem()).getId();
- descriptor.parameterValues = _parameters.getValues();
-
- descriptor.propertySet.references =
- (String[])_propertySets.getList().toArray(new String[0]);
- descriptor.propertySet.properties = _properties.getProperties();
- }
+ ServiceInstanceDescriptor descriptor = getDescriptor();
+ descriptor.template = ((ServiceTemplate)_template.getSelectedItem()).getId();
+ descriptor.parameterValues = _parameters.getValues();
+
+ descriptor.propertySet.references =
+ (String[])_propertySets.getList().toArray(new String[0]);
+ descriptor.propertySet.properties = _properties.getProperties();
+ }
boolean isSimpleUpdate()
{
- ServiceInstanceDescriptor descriptor = getDescriptor();
- ServiceTemplate t = (ServiceTemplate)_template.getSelectedItem();
-
- return descriptor.template.equals(t.getId())
- && descriptor.parameterValues.equals(_parameters.getValues());
+ ServiceInstanceDescriptor descriptor = getDescriptor();
+ ServiceTemplate t = (ServiceTemplate)_template.getSelectedItem();
+
+ return descriptor.template.equals(t.getId())
+ && descriptor.parameterValues.equals(_parameters.getValues());
}
Communicator.ChildList getChildList()
{
- return ((Communicator)_target.getParent()).getServices();
+ return ((Communicator)_target.getParent()).getServices();
}
protected void appendProperties(DefaultFormBuilder builder)
{
- builder.append("Template", _template);
- builder.append(_templateButton);
- builder.nextLine();
-
- builder.append("Parameters");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
-
- builder.nextLine();
- builder.append("");
-
- builder.nextRow(-6);
- JScrollPane scrollPane = new JScrollPane(_parameters);
- CellConstraints cc = new CellConstraints();
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
- builder.nextRow(6);
- builder.nextLine();
-
- builder.append("Property Sets");
- builder.append(_propertySets, 3);
- builder.nextLine();
-
- builder.append("Properties");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
-
- builder.nextLine();
- builder.append("");
-
- builder.nextRow(-6);
- scrollPane = new JScrollPane(_properties);
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
- builder.nextRow(6);
- builder.nextLine();
+ builder.append("Template", _template);
+ builder.append(_templateButton);
+ builder.nextLine();
+
+ builder.append("Parameters");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+
+ builder.nextLine();
+ builder.append("");
+
+ builder.nextRow(-6);
+ JScrollPane scrollPane = new JScrollPane(_parameters);
+ CellConstraints cc = new CellConstraints();
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
+ builder.nextRow(6);
+ builder.nextLine();
+
+ builder.append("Property Sets");
+ builder.append(_propertySets, 3);
+ builder.nextLine();
+
+ builder.append("Properties");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+
+ builder.nextLine();
+ builder.append("");
+
+ builder.nextRow(-6);
+ scrollPane = new JScrollPane(_properties);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
+ builder.nextRow(6);
+ builder.nextLine();
}
protected void buildPropertiesPanel()
{
- super.buildPropertiesPanel();
- _propertiesPanel.setName("Service Properties");
+ super.buildPropertiesPanel();
+ _propertiesPanel.setName("Service Properties");
}
void show(ServiceInstance service)
{
- detectUpdates(false);
- _target = service;
-
- //
- // If it's not a template instance, it's shown using
- // ServiceEditor.show()
- //
- assert getDescriptor().template.length() > 0;
-
- ServiceInstanceDescriptor descriptor =
- (ServiceInstanceDescriptor)service.getDescriptor();
- Coordinator coordinator = service.getCoordinator();
- boolean isEditable = service.isEphemeral() || !coordinator.substitute();
-
- Utils.Resolver resolver = isEditable ? null :
- ((TreeNode)service.getParent()).getResolver();
-
- //
- // Need to make control enabled before changing it
- //
- _template.setEnabled(true);
-
- ServiceTemplates serviceTemplates =
- service.getRoot().getServiceTemplates();
- _template.setModel(serviceTemplates.createComboBoxModel());
-
- ServiceTemplate t = (ServiceTemplate)
- serviceTemplates.findChild(descriptor.template);
- assert t != null;
- _template.setSelectedItem(t);
-
- ListDataListener templateListener = new ListDataListener()
- {
- public void contentsChanged(ListDataEvent e)
- {
- updated();
-
- ServiceTemplate t =
- (ServiceTemplate)_template.getModel().getSelectedItem();
-
- TemplateDescriptor td = (TemplateDescriptor)t.getDescriptor();
-
- //
- // Replace parameters but keep existing values
- //
- _parameters.set(td.parameters,
- makeParameterValues(_parameters.getValues(), td.parameters),
- td.parameterDefaults, null);
- }
-
- public void intervalAdded(ListDataEvent e)
- {}
+ detectUpdates(false);
+ _target = service;
+
+ //
+ // If it's not a template instance, it's shown using
+ // ServiceEditor.show()
+ //
+ assert getDescriptor().template.length() > 0;
+
+ ServiceInstanceDescriptor descriptor =
+ (ServiceInstanceDescriptor)service.getDescriptor();
+ Coordinator coordinator = service.getCoordinator();
+ boolean isEditable = service.isEphemeral() || !coordinator.substitute();
+
+ Utils.Resolver resolver = isEditable ? null :
+ ((TreeNode)service.getParent()).getResolver();
+
+ //
+ // Need to make control enabled before changing it
+ //
+ _template.setEnabled(true);
+
+ ServiceTemplates serviceTemplates =
+ service.getRoot().getServiceTemplates();
+ _template.setModel(serviceTemplates.createComboBoxModel());
+
+ ServiceTemplate t = (ServiceTemplate)
+ serviceTemplates.findChild(descriptor.template);
+ assert t != null;
+ _template.setSelectedItem(t);
+
+ ListDataListener templateListener = new ListDataListener()
+ {
+ public void contentsChanged(ListDataEvent e)
+ {
+ updated();
+
+ ServiceTemplate t =
+ (ServiceTemplate)_template.getModel().getSelectedItem();
+
+ TemplateDescriptor td = (TemplateDescriptor)t.getDescriptor();
+
+ //
+ // Replace parameters but keep existing values
+ //
+ _parameters.set(td.parameters,
+ makeParameterValues(_parameters.getValues(), td.parameters),
+ td.parameterDefaults, null);
+ }
+
+ public void intervalAdded(ListDataEvent e)
+ {}
- public void intervalRemoved(ListDataEvent e)
- {}
- };
-
- _template.getModel().addListDataListener(templateListener);
- _template.setEnabled(isEditable);
-
- TemplateDescriptor td = (TemplateDescriptor)t.getDescriptor();
- _parameters.set(td.parameters, descriptor.parameterValues,
- td.parameterDefaults, resolver);
-
- _propertySets.setList(java.util.Arrays.asList(descriptor.propertySet.references),
- getDetailResolver());
- _propertySets.setEditable(isEditable);
-
- _properties.setProperties(descriptor.propertySet.properties, null, null,
- getDetailResolver(), isEditable);
-
- _applyButton.setEnabled(service.isEphemeral());
- _discardButton.setEnabled(service.isEphemeral());
- detectUpdates(true);
+ public void intervalRemoved(ListDataEvent e)
+ {}
+ };
+
+ _template.getModel().addListDataListener(templateListener);
+ _template.setEnabled(isEditable);
+
+ TemplateDescriptor td = (TemplateDescriptor)t.getDescriptor();
+ _parameters.set(td.parameters, descriptor.parameterValues,
+ td.parameterDefaults, resolver);
+
+ _propertySets.setList(java.util.Arrays.asList(descriptor.propertySet.references),
+ getDetailResolver());
+ _propertySets.setEditable(isEditable);
+
+ _properties.setProperties(descriptor.propertySet.properties, null, null,
+ getDetailResolver(), isEditable);
+
+ _applyButton.setEnabled(service.isEphemeral());
+ _discardButton.setEnabled(service.isEphemeral());
+ detectUpdates(true);
}
private JComboBox _template = new JComboBox();
diff --git a/java/src/IceGridGUI/Application/ServiceSubEditor.java b/java/src/IceGridGUI/Application/ServiceSubEditor.java
index 925ad59bf4b..0f5652e02af 100755
--- a/java/src/IceGridGUI/Application/ServiceSubEditor.java
+++ b/java/src/IceGridGUI/Application/ServiceSubEditor.java
@@ -23,86 +23,86 @@ class ServiceSubEditor extends CommunicatorSubEditor
{
ServiceSubEditor(Editor mainEditor)
{
- super(mainEditor);
+ super(mainEditor);
- _name.getDocument().addDocumentListener(
- _mainEditor.getUpdateListener());
- _name.setToolTipText("Identifies this service within an IceBox server");
+ _name.getDocument().addDocumentListener(
+ _mainEditor.getUpdateListener());
+ _name.setToolTipText("Identifies this service within an IceBox server");
- _entry.getDocument().addDocumentListener(
- _mainEditor.getUpdateListener());
- _entry.setToolTipText(
- "<html>The service entry point and optional arguments.<br>"
- + "C++: <i>shared object:function-name arg1 arg2 ...</i><br>"
- + "Java: <i>class-name arg1 arg2 ...</i><br>"
- + "C#, Visual Basic: <i>assembly:class-name arg1 arg2 ...</i>"
- + "</html>");
+ _entry.getDocument().addDocumentListener(
+ _mainEditor.getUpdateListener());
+ _entry.setToolTipText(
+ "<html>The service entry point and optional arguments.<br>"
+ + "C++: <i>shared object:function-name arg1 arg2 ...</i><br>"
+ + "Java: <i>class-name arg1 arg2 ...</i><br>"
+ + "C#, Visual Basic: <i>assembly:class-name arg1 arg2 ...</i>"
+ + "</html>");
}
ServiceDescriptor getServiceDescriptor()
{
- return (ServiceDescriptor)
- _mainEditor.getSubDescriptor();
+ return (ServiceDescriptor)
+ _mainEditor.getSubDescriptor();
}
void appendProperties(DefaultFormBuilder builder)
{
- builder.append("Service Name");
- builder.append(_name, 3);
- builder.nextLine();
-
- //
- // Add Communicator fields
- //
- super.appendProperties(builder);
+ builder.append("Service Name");
+ builder.append(_name, 3);
+ builder.nextLine();
+
+ //
+ // Add Communicator fields
+ //
+ super.appendProperties(builder);
- builder.append("Entry Point");
- builder.append(_entry, 3);
- builder.nextLine();
+ builder.append("Entry Point");
+ builder.append(_entry, 3);
+ builder.nextLine();
}
void writeDescriptor()
{
- ServiceDescriptor descriptor = getServiceDescriptor();
- descriptor.name = _name.getText().trim();
- descriptor.entry = _entry.getText().trim();
- super.writeDescriptor(descriptor);
- }
+ ServiceDescriptor descriptor = getServiceDescriptor();
+ descriptor.name = _name.getText().trim();
+ descriptor.entry = _entry.getText().trim();
+ super.writeDescriptor(descriptor);
+ }
boolean isSimpleUpdate()
{
- return getServiceDescriptor().name.equals(_name.getText().trim());
+ return getServiceDescriptor().name.equals(_name.getText().trim());
}
boolean validate()
{
- return _mainEditor.check(new String[]{
- "Service Name", _name.getText().trim(),
- "Entry Point", _entry.getText().trim()});
+ return _mainEditor.check(new String[]{
+ "Service Name", _name.getText().trim(),
+ "Entry Point", _entry.getText().trim()});
}
void show(boolean isEditable)
{
- ServiceDescriptor descriptor = getServiceDescriptor();
- Utils.Resolver detailResolver = _mainEditor.getDetailResolver();
-
- isEditable = isEditable && (detailResolver == null);
+ ServiceDescriptor descriptor = getServiceDescriptor();
+ Utils.Resolver detailResolver = _mainEditor.getDetailResolver();
+
+ isEditable = isEditable && (detailResolver == null);
- if(detailResolver != null)
- {
- _name.setText(detailResolver.find("service"));
- }
- else
- {
- _name.setText(descriptor.name);
- }
- _name.setEditable(isEditable);
-
- _entry.setText(
- Utils.substitute(descriptor.entry, detailResolver));
- _entry.setEditable(isEditable);
+ if(detailResolver != null)
+ {
+ _name.setText(detailResolver.find("service"));
+ }
+ else
+ {
+ _name.setText(descriptor.name);
+ }
+ _name.setEditable(isEditable);
+
+ _entry.setText(
+ Utils.substitute(descriptor.entry, detailResolver));
+ _entry.setEditable(isEditable);
- show(descriptor, isEditable);
+ show(descriptor, isEditable);
}
private JTextField _name = new JTextField(20);
diff --git a/java/src/IceGridGUI/Application/ServiceTemplate.java b/java/src/IceGridGUI/Application/ServiceTemplate.java
index a6c757519e3..72b17ec4261 100755
--- a/java/src/IceGridGUI/Application/ServiceTemplate.java
+++ b/java/src/IceGridGUI/Application/ServiceTemplate.java
@@ -22,35 +22,35 @@ class ServiceTemplate extends Communicator
static public TemplateDescriptor
copyDescriptor(TemplateDescriptor templateDescriptor)
{
- TemplateDescriptor copy = (TemplateDescriptor)
- templateDescriptor.clone();
+ TemplateDescriptor copy = (TemplateDescriptor)
+ templateDescriptor.clone();
- copy.descriptor = PlainService.copyDescriptor(
- (ServiceDescriptor)copy.descriptor);
-
- return copy;
+ copy.descriptor = PlainService.copyDescriptor(
+ (ServiceDescriptor)copy.descriptor);
+
+ return copy;
}
public Component getTreeCellRendererComponent(
- JTree tree,
- Object value,
- boolean sel,
- boolean expanded,
- boolean leaf,
- int row,
- boolean hasFocus)
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
{
- if(_cellRenderer == null)
- {
- _cellRenderer = new DefaultTreeCellRenderer();
- _cellRenderer.setOpenIcon(
- Utils.getIcon("/icons/16x16/service_template.png"));
- _cellRenderer.setClosedIcon(
- Utils.getIcon("/icons/16x16/service_template.png"));
- }
-
- return _cellRenderer.getTreeCellRendererComponent(
- tree, value, sel, expanded, leaf, row, hasFocus);
+ if(_cellRenderer == null)
+ {
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _cellRenderer.setOpenIcon(
+ Utils.getIcon("/icons/16x16/service_template.png"));
+ _cellRenderer.setClosedIcon(
+ Utils.getIcon("/icons/16x16/service_template.png"));
+ }
+
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
}
@@ -59,205 +59,205 @@ class ServiceTemplate extends Communicator
//
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
-
- if(((TreeNode)_parent).getAvailableActions()[PASTE])
- {
- actions[PASTE] = true;
- }
- else
- {
- Object clipboard = getCoordinator().getClipboard();
- actions[PASTE] = clipboard != null &&
- (clipboard instanceof AdapterDescriptor
- || clipboard instanceof DbEnvDescriptor);
- }
-
- actions[DELETE] = true;
-
- if(!_ephemeral)
- {
- actions[COPY] = true;
- actions[NEW_ADAPTER] = true;
- actions[NEW_DBENV] = true;
- }
-
- return actions;
+ boolean[] actions = new boolean[ACTION_COUNT];
+
+ if(((TreeNode)_parent).getAvailableActions()[PASTE])
+ {
+ actions[PASTE] = true;
+ }
+ else
+ {
+ Object clipboard = getCoordinator().getClipboard();
+ actions[PASTE] = clipboard != null &&
+ (clipboard instanceof AdapterDescriptor
+ || clipboard instanceof DbEnvDescriptor);
+ }
+
+ actions[DELETE] = true;
+
+ if(!_ephemeral)
+ {
+ actions[COPY] = true;
+ actions[NEW_ADAPTER] = true;
+ actions[NEW_DBENV] = true;
+ }
+
+ return actions;
}
public void copy()
{
- getCoordinator().setClipboard(copyDescriptor(_templateDescriptor));
- getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
+ getCoordinator().setClipboard(copyDescriptor(_templateDescriptor));
+ getCoordinator().getActionsForMenu().get(PASTE).setEnabled(true);
}
public JPopupMenu getPopupMenu()
{
- ApplicationActions actions = getCoordinator().getActionsForPopup();
- if(_popup == null)
- {
- _popup = new JPopupMenu();
- _popup.add(actions.get(NEW_ADAPTER));
- _popup.add(actions.get(NEW_DBENV));
- }
- actions.setTarget(this);
- return _popup;
+ ApplicationActions actions = getCoordinator().getActionsForPopup();
+ if(_popup == null)
+ {
+ _popup = new JPopupMenu();
+ _popup.add(actions.get(NEW_ADAPTER));
+ _popup.add(actions.get(NEW_DBENV));
+ }
+ actions.setTarget(this);
+ return _popup;
}
public Editor getEditor()
{
- if(_editor == null)
- {
- _editor = (ServiceTemplateEditor)getRoot().getEditor(ServiceTemplateEditor.class, this);
- }
- _editor.show(this);
- return _editor;
+ if(_editor == null)
+ {
+ _editor = (ServiceTemplateEditor)getRoot().getEditor(ServiceTemplateEditor.class, this);
+ }
+ _editor.show(this);
+ return _editor;
}
protected Editor createEditor()
{
- return new ServiceTemplateEditor();
+ return new ServiceTemplateEditor();
}
ServiceTemplate(boolean brandNew, ServiceTemplates parent,
- String name, TemplateDescriptor descriptor)
- throws UpdateFailedException
+ String name, TemplateDescriptor descriptor)
+ throws UpdateFailedException
{
- super(parent, name);
- _editable = new Editable(brandNew);
- _ephemeral = false;
- rebuild(descriptor);
+ super(parent, name);
+ _editable = new Editable(brandNew);
+ _ephemeral = false;
+ rebuild(descriptor);
}
ServiceTemplate(ServiceTemplates parent, String name, TemplateDescriptor descriptor)
{
- super(parent, name);
- _ephemeral = true;
- _editable = null;
- _templateDescriptor = descriptor;
+ super(parent, name);
+ _ephemeral = true;
+ _editable = null;
+ _templateDescriptor = descriptor;
}
void write(XMLWriter writer) throws java.io.IOException
{
- if(!_ephemeral)
- {
- java.util.List attributes = new java.util.LinkedList();
- attributes.add(createAttribute("id", _id));
- writer.writeStartTag("service-template", attributes);
- writeParameters(writer, _templateDescriptor.parameters,
- _templateDescriptor.parameterDefaults);
-
- ServiceDescriptor descriptor = (ServiceDescriptor)_templateDescriptor.descriptor;
-
- writer.writeStartTag("service", PlainService.createAttributes(descriptor));
-
- if(descriptor.description.length() > 0)
- {
- writer.writeElement("description", descriptor.description);
- }
-
- writePropertySet(writer, descriptor.propertySet, descriptor.adapters, descriptor.logs);
- writeLogs(writer, descriptor.logs, descriptor.propertySet.properties);
- _adapters.write(writer, descriptor.propertySet.properties);
- _dbEnvs.write(writer);
- writer.writeEndTag("service");
- writer.writeEndTag("service-template");
- }
+ if(!_ephemeral)
+ {
+ java.util.List attributes = new java.util.LinkedList();
+ attributes.add(createAttribute("id", _id));
+ writer.writeStartTag("service-template", attributes);
+ writeParameters(writer, _templateDescriptor.parameters,
+ _templateDescriptor.parameterDefaults);
+
+ ServiceDescriptor descriptor = (ServiceDescriptor)_templateDescriptor.descriptor;
+
+ writer.writeStartTag("service", PlainService.createAttributes(descriptor));
+
+ if(descriptor.description.length() > 0)
+ {
+ writer.writeElement("description", descriptor.description);
+ }
+
+ writePropertySet(writer, descriptor.propertySet, descriptor.adapters, descriptor.logs);
+ writeLogs(writer, descriptor.logs, descriptor.propertySet.properties);
+ _adapters.write(writer, descriptor.propertySet.properties);
+ _dbEnvs.write(writer);
+ writer.writeEndTag("service");
+ writer.writeEndTag("service-template");
+ }
}
void rebuild(TemplateDescriptor descriptor)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- _templateDescriptor = descriptor;
+ _templateDescriptor = descriptor;
- _adapters.clear();
- _dbEnvs.clear();
+ _adapters.clear();
+ _dbEnvs.clear();
- if(!_ephemeral)
- {
- _adapters.init(_templateDescriptor.descriptor.adapters);
- _dbEnvs.init(_templateDescriptor.descriptor.dbEnvs);
- }
+ if(!_ephemeral)
+ {
+ _adapters.init(_templateDescriptor.descriptor.adapters);
+ _dbEnvs.init(_templateDescriptor.descriptor.dbEnvs);
+ }
}
void commit()
{
- _editable.commit();
+ _editable.commit();
}
public Object getDescriptor()
{
- return _templateDescriptor;
+ return _templateDescriptor;
}
CommunicatorDescriptor getCommunicatorDescriptor()
{
- return _templateDescriptor.descriptor;
+ return _templateDescriptor.descriptor;
}
public boolean isEphemeral()
{
- return _ephemeral;
+ return _ephemeral;
}
public void destroy()
{
- ServiceTemplates serviceTemplates = (ServiceTemplates)_parent;
-
- if(_ephemeral)
- {
- serviceTemplates.removeChild(this);
- }
- else
- {
- serviceTemplates.removeDescriptor(_id);
- getRoot().removeServiceInstances(_id);
- serviceTemplates.removeChild(this);
- serviceTemplates.getEditable().
- removeElement(_id, _editable, ServiceTemplate.class);
- getRoot().updated();
- }
+ ServiceTemplates serviceTemplates = (ServiceTemplates)_parent;
+
+ if(_ephemeral)
+ {
+ serviceTemplates.removeChild(this);
+ }
+ else
+ {
+ serviceTemplates.removeDescriptor(_id);
+ getRoot().removeServiceInstances(_id);
+ serviceTemplates.removeChild(this);
+ serviceTemplates.getEditable().
+ removeElement(_id, _editable, ServiceTemplate.class);
+ getRoot().updated();
+ }
}
java.util.List findInstances()
{
- return getRoot().findServiceInstances(_id);
+ return getRoot().findServiceInstances(_id);
}
Editable getEditable()
{
- return _editable;
+ return _editable;
}
Editable getEnclosingEditable()
{
- return _editable;
+ return _editable;
}
public Object saveDescriptor()
{
- //
- // Shallow copy
- //
- TemplateDescriptor clone = (TemplateDescriptor)_templateDescriptor.clone();
- clone.descriptor = (ServiceDescriptor)_templateDescriptor.descriptor.clone();
- return clone;
+ //
+ // Shallow copy
+ //
+ TemplateDescriptor clone = (TemplateDescriptor)_templateDescriptor.clone();
+ clone.descriptor = (ServiceDescriptor)_templateDescriptor.descriptor.clone();
+ return clone;
}
public void restoreDescriptor(Object savedDescriptor)
{
- TemplateDescriptor clone = (TemplateDescriptor)savedDescriptor;
- //
- // Keep the same object
- //
- _templateDescriptor.parameters = clone.parameters;
-
- ServiceDescriptor sd = (ServiceDescriptor)_templateDescriptor.descriptor;
- ServiceDescriptor csd = (ServiceDescriptor)clone.descriptor;
-
- sd.propertySet = csd.propertySet;
- sd.description = csd.description;
- sd.name = csd.name;
- sd.entry = csd.entry;
+ TemplateDescriptor clone = (TemplateDescriptor)savedDescriptor;
+ //
+ // Keep the same object
+ //
+ _templateDescriptor.parameters = clone.parameters;
+
+ ServiceDescriptor sd = (ServiceDescriptor)_templateDescriptor.descriptor;
+ ServiceDescriptor csd = (ServiceDescriptor)clone.descriptor;
+
+ sd.propertySet = csd.propertySet;
+ sd.description = csd.description;
+ sd.name = csd.name;
+ sd.entry = csd.entry;
}
private TemplateDescriptor _templateDescriptor;
diff --git a/java/src/IceGridGUI/Application/ServiceTemplateEditor.java b/java/src/IceGridGUI/Application/ServiceTemplateEditor.java
index 6db6e77a692..8d37cc803f5 100755
--- a/java/src/IceGridGUI/Application/ServiceTemplateEditor.java
+++ b/java/src/IceGridGUI/Application/ServiceTemplateEditor.java
@@ -14,50 +14,50 @@ class ServiceTemplateEditor extends TemplateEditor
{
ServiceTemplateEditor()
{
- _subEditor = new ServiceSubEditor(this);
+ _subEditor = new ServiceSubEditor(this);
}
void writeDescriptor()
{
- super.writeDescriptor();
- _subEditor.writeDescriptor();
- }
+ super.writeDescriptor();
+ _subEditor.writeDescriptor();
+ }
boolean isSimpleUpdate()
{
- return super.isSimpleUpdate() && _subEditor.isSimpleUpdate();
+ return super.isSimpleUpdate() && _subEditor.isSimpleUpdate();
}
protected void appendProperties(DefaultFormBuilder builder)
{
- super.appendProperties(builder);
- builder.appendSeparator();
- builder.nextLine();
- _subEditor.appendProperties(builder);
+ super.appendProperties(builder);
+ builder.appendSeparator();
+ builder.nextLine();
+ _subEditor.appendProperties(builder);
}
protected void buildPropertiesPanel()
{
- super.buildPropertiesPanel();
- _propertiesPanel.setName("Service Template Properties");
+ super.buildPropertiesPanel();
+ _propertiesPanel.setName("Service Template Properties");
}
protected boolean validate()
{
- return super.validate() && _subEditor.validate();
+ return super.validate() && _subEditor.validate();
}
void show(ServiceTemplate t)
{
- detectUpdates(false);
- _target = t;
-
- super.show();
- _subEditor.show(true);
+ detectUpdates(false);
+ _target = t;
+
+ super.show();
+ _subEditor.show(true);
- _applyButton.setEnabled(t.isEphemeral());
- _discardButton.setEnabled(t.isEphemeral());
- detectUpdates(true);
+ _applyButton.setEnabled(t.isEphemeral());
+ _discardButton.setEnabled(t.isEphemeral());
+ detectUpdates(true);
}
private ServiceSubEditor _subEditor;
diff --git a/java/src/IceGridGUI/Application/ServiceTemplates.java b/java/src/IceGridGUI/Application/ServiceTemplates.java
index a231df74f6a..74bd639ecf3 100755
--- a/java/src/IceGridGUI/Application/ServiceTemplates.java
+++ b/java/src/IceGridGUI/Application/ServiceTemplates.java
@@ -23,17 +23,17 @@ class ServiceTemplates extends Templates
static public java.util.Map
copyDescriptors(java.util.Map descriptors)
{
- java.util.Map copy = new java.util.HashMap();
- java.util.Iterator p = descriptors.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
-
- copy.put(entry.getKey(),
- ServiceTemplate.copyDescriptor(
- (TemplateDescriptor)entry.getValue()));
- }
- return copy;
+ java.util.Map copy = new java.util.HashMap();
+ java.util.Iterator p = descriptors.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+
+ copy.put(entry.getKey(),
+ ServiceTemplate.copyDescriptor(
+ (TemplateDescriptor)entry.getValue()));
+ }
+ return copy;
}
@@ -42,67 +42,67 @@ class ServiceTemplates extends Templates
//
public boolean[] getAvailableActions()
{
- boolean[] actions = new boolean[ACTION_COUNT];
- actions[NEW_TEMPLATE_SERVICE] = true;
-
- Object clipboard = getCoordinator().getClipboard();
- if(clipboard != null && clipboard instanceof TemplateDescriptor)
- {
- TemplateDescriptor d = (TemplateDescriptor)clipboard;
- actions[PASTE] = d.descriptor instanceof ServiceDescriptor;
- }
- return actions;
+ boolean[] actions = new boolean[ACTION_COUNT];
+ actions[NEW_TEMPLATE_SERVICE] = true;
+
+ Object clipboard = getCoordinator().getClipboard();
+ if(clipboard != null && clipboard instanceof TemplateDescriptor)
+ {
+ TemplateDescriptor d = (TemplateDescriptor)clipboard;
+ actions[PASTE] = d.descriptor instanceof ServiceDescriptor;
+ }
+ return actions;
}
public JPopupMenu getPopupMenu()
{
- ApplicationActions actions = getCoordinator().getActionsForPopup();
- if(_popup == null)
- {
- _popup = new JPopupMenu();
- _popup.add(actions.get(NEW_TEMPLATE_SERVICE));
- }
- actions.setTarget(this);
- return _popup;
+ ApplicationActions actions = getCoordinator().getActionsForPopup();
+ if(_popup == null)
+ {
+ _popup = new JPopupMenu();
+ _popup.add(actions.get(NEW_TEMPLATE_SERVICE));
+ }
+ actions.setTarget(this);
+ return _popup;
}
public void newTemplateService()
{
- ServiceDescriptor sd = new ServiceDescriptor(
- new java.util.LinkedList(),
- new PropertySetDescriptor(new String[0], new java.util.LinkedList()),
- new java.util.LinkedList(),
- new String[0],
- "",
- "",
- "");
-
- newServiceTemplate(new TemplateDescriptor(sd, new java.util.LinkedList(), new java.util.TreeMap()));
+ ServiceDescriptor sd = new ServiceDescriptor(
+ new java.util.LinkedList(),
+ new PropertySetDescriptor(new String[0], new java.util.LinkedList()),
+ new java.util.LinkedList(),
+ new String[0],
+ "",
+ "",
+ "");
+
+ newServiceTemplate(new TemplateDescriptor(sd, new java.util.LinkedList(), new java.util.TreeMap()));
}
public void paste()
{
- Object descriptor = getCoordinator().getClipboard();
- TemplateDescriptor td = (TemplateDescriptor)descriptor;
- newServiceTemplate(td);
+ Object descriptor = getCoordinator().getClipboard();
+ TemplateDescriptor td = (TemplateDescriptor)descriptor;
+ newServiceTemplate(td);
}
ServiceTemplates(Root parent, java.util.Map descriptors)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- super(parent, "Service templates");
-
- _descriptors = descriptors;
-
- java.util.Iterator p = _descriptors.entrySet().iterator();
-
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- insertChild(new ServiceTemplate(false, this,
- (String)entry.getKey(),
- (TemplateDescriptor)entry.getValue()),
- false);
- }
+ super(parent, "Service templates");
+
+ _descriptors = descriptors;
+
+ java.util.Iterator p = _descriptors.entrySet().iterator();
+
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ insertChild(new ServiceTemplate(false, this,
+ (String)entry.getKey(),
+ (TemplateDescriptor)entry.getValue()),
+ false);
+ }
}
//
@@ -110,110 +110,110 @@ class ServiceTemplates extends Templates
//
Utils.Resolver getResolver()
{
- return null;
+ return null;
}
void newServiceTemplate(TemplateDescriptor descriptor)
{
- String id = makeNewChildId("NewServiceTemplate");
-
- ServiceTemplate t = new ServiceTemplate(this, id, descriptor);
- try
- {
- insertChild(t, true);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
- getRoot().setSelectedNode(t);
+ String id = makeNewChildId("NewServiceTemplate");
+
+ ServiceTemplate t = new ServiceTemplate(this, id, descriptor);
+ try
+ {
+ insertChild(t, true);
+ }
+ catch(UpdateFailedException e)
+ {
+ assert false;
+ }
+ getRoot().setSelectedNode(t);
}
void tryAdd(String newId, TemplateDescriptor descriptor)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- insertChild(new ServiceTemplate(true, this, newId, descriptor),
- true);
- _descriptors.put(newId, descriptor);
+ insertChild(new ServiceTemplate(true, this, newId, descriptor),
+ true);
+ _descriptors.put(newId, descriptor);
}
java.util.Map getUpdates()
{
- java.util.Map updates = new java.util.HashMap();
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- ServiceTemplate t = (ServiceTemplate)p.next();
- if(t.getEditable().isNew() || t.getEditable().isModified())
- {
- updates.put(t.getId(), t.getDescriptor());
- }
- }
- return updates;
+ java.util.Map updates = new java.util.HashMap();
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ ServiceTemplate t = (ServiceTemplate)p.next();
+ if(t.getEditable().isNew() || t.getEditable().isModified())
+ {
+ updates.put(t.getId(), t.getDescriptor());
+ }
+ }
+ return updates;
}
void commit()
{
- _editable.commit();
- java.util.Iterator p = _children.iterator();
- while(p.hasNext())
- {
- ServiceTemplate st = (ServiceTemplate)p.next();
- st.commit();
- }
+ _editable.commit();
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ ServiceTemplate st = (ServiceTemplate)p.next();
+ st.commit();
+ }
}
void update(java.util.Map descriptors, String[] removeTemplates)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- //
- // Note: _descriptors is updated by Application
- //
-
- //
- // One big set of removes
- //
- removeChildren(removeTemplates);
-
- //
- // One big set of updates, followed by inserts
- //
- java.util.Vector newChildren = new java.util.Vector();
- java.util.Vector updatedChildren = new java.util.Vector();
-
- java.util.Iterator p = descriptors.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
- String name = (String)entry.getKey();
- TemplateDescriptor templateDescriptor
- = (TemplateDescriptor)entry.getValue();
- ServiceTemplate child = (ServiceTemplate)findChild(name);
- if(child == null)
- {
- newChildren.add(new ServiceTemplate(false, this, name,
- templateDescriptor));
- }
- else
- {
- child.rebuild(templateDescriptor);
- updatedChildren.add(child);
- }
- }
-
- childrenChanged(updatedChildren);
- insertChildren(newChildren, true);
+ //
+ // Note: _descriptors is updated by Application
+ //
+
+ //
+ // One big set of removes
+ //
+ removeChildren(removeTemplates);
+
+ //
+ // One big set of updates, followed by inserts
+ //
+ java.util.Vector newChildren = new java.util.Vector();
+ java.util.Vector updatedChildren = new java.util.Vector();
+
+ java.util.Iterator p = descriptors.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+ String name = (String)entry.getKey();
+ TemplateDescriptor templateDescriptor
+ = (TemplateDescriptor)entry.getValue();
+ ServiceTemplate child = (ServiceTemplate)findChild(name);
+ if(child == null)
+ {
+ newChildren.add(new ServiceTemplate(false, this, name,
+ templateDescriptor));
+ }
+ else
+ {
+ child.rebuild(templateDescriptor);
+ updatedChildren.add(child);
+ }
+ }
+
+ childrenChanged(updatedChildren);
+ insertChildren(newChildren, true);
}
void removeDescriptor(String id)
{
- _descriptors.remove(id);
+ _descriptors.remove(id);
}
Object getDescriptor()
{
- return _descriptors;
+ return _descriptors;
}
private java.util.Map _descriptors;
diff --git a/java/src/IceGridGUI/Application/TemplateEditor.java b/java/src/IceGridGUI/Application/TemplateEditor.java
index aee3bedaa15..e0557b39170 100755
--- a/java/src/IceGridGUI/Application/TemplateEditor.java
+++ b/java/src/IceGridGUI/Application/TemplateEditor.java
@@ -27,189 +27,189 @@ class TemplateEditor extends Editor
{
TemplateEditor()
{
- _template.getDocument().addDocumentListener(_updateListener);
- _template.setToolTipText("Must be unique within the enclosing application");
+ _template.getDocument().addDocumentListener(_updateListener);
+ _template.setToolTipText("Must be unique within the enclosing application");
- _parameters = new ParametersField(this);
+ _parameters = new ParametersField(this);
}
TemplateDescriptor getDescriptor()
{
- return (TemplateDescriptor)_target.getDescriptor();
+ return (TemplateDescriptor)_target.getDescriptor();
}
Object getSubDescriptor()
{
- return getDescriptor().descriptor;
+ return getDescriptor().descriptor;
}
void writeDescriptor()
{
- TemplateDescriptor descriptor = getDescriptor();
- java.util.LinkedList parameters = new java.util.LinkedList();
- descriptor.parameterDefaults = _parameters.get(parameters);
- descriptor.parameters = parameters;
- }
+ TemplateDescriptor descriptor = getDescriptor();
+ java.util.LinkedList parameters = new java.util.LinkedList();
+ descriptor.parameterDefaults = _parameters.get(parameters);
+ descriptor.parameters = parameters;
+ }
boolean isSimpleUpdate()
{
- TemplateDescriptor descriptor = getDescriptor();
- java.util.List parameters = new java.util.LinkedList();
- java.util.Map defaultValues = _parameters.get(parameters);
+ TemplateDescriptor descriptor = getDescriptor();
+ java.util.List parameters = new java.util.LinkedList();
+ java.util.Map defaultValues = _parameters.get(parameters);
- return descriptor.parameters.equals(parameters)
- && descriptor.parameterDefaults.equals(defaultValues);
+ return descriptor.parameters.equals(parameters)
+ && descriptor.parameterDefaults.equals(defaultValues);
}
protected void appendProperties(DefaultFormBuilder builder)
{
- builder.append("Template ID");
- builder.append(_template, 3);
- builder.nextLine();
-
- builder.append("Parameters");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
- builder.nextLine();
- builder.append("");
-
- builder.nextRow(-6);
- JScrollPane scrollPane = new JScrollPane(_parameters);
- CellConstraints cc = new CellConstraints();
- builder.add(scrollPane,
- cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
- builder.nextRow(6);
- builder.nextLine();
+ builder.append("Template ID");
+ builder.append(_template, 3);
+ builder.nextLine();
+
+ builder.append("Parameters");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+
+ builder.nextRow(-6);
+ JScrollPane scrollPane = new JScrollPane(_parameters);
+ CellConstraints cc = new CellConstraints();
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
+ builder.nextRow(6);
+ builder.nextLine();
}
protected boolean validate()
{
- return check(new String[]{"Template ID", _template.getText().trim()});
+ return check(new String[]{"Template ID", _template.getText().trim()});
}
void show()
{
- TemplateDescriptor descriptor = getDescriptor();
- _template.setText(_target.getId());
- _template.setEditable(_target.isEphemeral());
+ TemplateDescriptor descriptor = getDescriptor();
+ _template.setText(_target.getId());
+ _template.setEditable(_target.isEphemeral());
- _parameters.set(descriptor.parameters, descriptor.parameterDefaults);
+ _parameters.set(descriptor.parameters, descriptor.parameterDefaults);
}
protected boolean applyUpdate(boolean refresh)
{
- Root root = _target.getRoot();
- root.disableSelectionListener();
-
- try
- {
- if(_target.isEphemeral())
- {
- writeDescriptor();
- TemplateDescriptor descriptor = getDescriptor();
- Templates parent = (Templates)_target.getParent();
- _target.destroy(); // just removes the child
-
- try
- {
- parent.tryAdd(_template.getText().trim(), descriptor);
- }
- catch(UpdateFailedException e)
- {
- //
- // Re-add ephemeral child
- //
- try
- {
- parent.insertChild(_target, true);
- }
- catch(UpdateFailedException die)
- {
- assert false;
- }
- root.setSelectedNode(_target);
-
- JOptionPane.showMessageDialog(
- _target.getCoordinator().getMainFrame(),
- e.toString(),
- "Apply failed",
- JOptionPane.ERROR_MESSAGE);
- return false;
- }
-
- //
- // Success
- //
- _target = parent.findChildWithDescriptor(descriptor);
- root.updated();
- _template.setEditable(false);
- if(refresh)
- {
- root.setSelectedNode(_target);
- }
- }
- else if(isSimpleUpdate())
- {
- writeDescriptor();
- ((Communicator)_target).getEnclosingEditable().markModified();
- root.updated();
-
- }
- else
- {
- //
- // Save to be able to rollback
- //
- Object savedDescriptor = ((Communicator)_target).saveDescriptor();
- Templates parent = (Templates)_target.getParent();
- writeDescriptor();
-
- try
- {
- parent.tryUpdate((Communicator)_target);
- }
- catch(UpdateFailedException e)
- {
- ((Communicator)_target).restoreDescriptor(savedDescriptor);
-
- JOptionPane.showMessageDialog(
- _target.getCoordinator().getMainFrame(),
- e.toString(),
- "Apply failed",
- JOptionPane.ERROR_MESSAGE);
- //
- // Everything was restored, user must deal with error
- //
- return false;
- }
-
- //
- // Success
- //
- ((Communicator)_target).getEnclosingEditable().markModified();
- root.updated();
-
- _target = parent.findChildWithDescriptor(getDescriptor());
- if(refresh)
- {
- root.setSelectedNode(_target);
- }
- }
-
- if(refresh)
- {
- root.getCoordinator().getCurrentTab().showNode(_target);
- }
- _applyButton.setEnabled(false);
- _discardButton.setEnabled(false);
- return true;
- }
- finally
- {
- root.enableSelectionListener();
- }
+ Root root = _target.getRoot();
+ root.disableSelectionListener();
+
+ try
+ {
+ if(_target.isEphemeral())
+ {
+ writeDescriptor();
+ TemplateDescriptor descriptor = getDescriptor();
+ Templates parent = (Templates)_target.getParent();
+ _target.destroy(); // just removes the child
+
+ try
+ {
+ parent.tryAdd(_template.getText().trim(), descriptor);
+ }
+ catch(UpdateFailedException e)
+ {
+ //
+ // Re-add ephemeral child
+ //
+ try
+ {
+ parent.insertChild(_target, true);
+ }
+ catch(UpdateFailedException die)
+ {
+ assert false;
+ }
+ root.setSelectedNode(_target);
+
+ JOptionPane.showMessageDialog(
+ _target.getCoordinator().getMainFrame(),
+ e.toString(),
+ "Apply failed",
+ JOptionPane.ERROR_MESSAGE);
+ return false;
+ }
+
+ //
+ // Success
+ //
+ _target = parent.findChildWithDescriptor(descriptor);
+ root.updated();
+ _template.setEditable(false);
+ if(refresh)
+ {
+ root.setSelectedNode(_target);
+ }
+ }
+ else if(isSimpleUpdate())
+ {
+ writeDescriptor();
+ ((Communicator)_target).getEnclosingEditable().markModified();
+ root.updated();
+
+ }
+ else
+ {
+ //
+ // Save to be able to rollback
+ //
+ Object savedDescriptor = ((Communicator)_target).saveDescriptor();
+ Templates parent = (Templates)_target.getParent();
+ writeDescriptor();
+
+ try
+ {
+ parent.tryUpdate((Communicator)_target);
+ }
+ catch(UpdateFailedException e)
+ {
+ ((Communicator)_target).restoreDescriptor(savedDescriptor);
+
+ JOptionPane.showMessageDialog(
+ _target.getCoordinator().getMainFrame(),
+ e.toString(),
+ "Apply failed",
+ JOptionPane.ERROR_MESSAGE);
+ //
+ // Everything was restored, user must deal with error
+ //
+ return false;
+ }
+
+ //
+ // Success
+ //
+ ((Communicator)_target).getEnclosingEditable().markModified();
+ root.updated();
+
+ _target = parent.findChildWithDescriptor(getDescriptor());
+ if(refresh)
+ {
+ root.setSelectedNode(_target);
+ }
+ }
+
+ if(refresh)
+ {
+ root.getCoordinator().getCurrentTab().showNode(_target);
+ }
+ _applyButton.setEnabled(false);
+ _discardButton.setEnabled(false);
+ return true;
+ }
+ finally
+ {
+ root.enableSelectionListener();
+ }
}
private JTextField _template = new JTextField(20);
diff --git a/java/src/IceGridGUI/Application/Templates.java b/java/src/IceGridGUI/Application/Templates.java
index 15b3b652211..4dc842d1bdc 100755
--- a/java/src/IceGridGUI/Application/Templates.java
+++ b/java/src/IceGridGUI/Application/Templates.java
@@ -16,46 +16,46 @@ import IceGridGUI.*;
abstract class Templates extends ListTreeNode
{
abstract void tryAdd(String newId, TemplateDescriptor descriptor)
- throws UpdateFailedException;
+ throws UpdateFailedException;
protected Templates(Root parent, String id)
{
- super(false, parent, id);
+ super(false, parent, id);
}
void tryUpdate(Communicator child)
- throws UpdateFailedException
+ throws UpdateFailedException
{
- java.util.List instanceList = child.findInstances();
- java.util.List backupList = new java.util.Vector();
+ java.util.List instanceList = child.findInstances();
+ java.util.List backupList = new java.util.Vector();
- java.util.List editables = new java.util.LinkedList();
+ java.util.List editables = new java.util.LinkedList();
- java.util.Iterator p = instanceList.iterator();
- while(p.hasNext())
- {
- TemplateInstance instance = (TemplateInstance)p.next();
-
- try
- {
- backupList.add(instance.rebuild(editables));
- }
- catch(UpdateFailedException e)
- {
- for(int i = backupList.size() - 1; i >= 0; --i)
- {
- instance = (TemplateInstance)instanceList.get(i);
- instance.restore(backupList.get(i));
- }
- throw e;
- }
- }
-
- p = editables.iterator();
- while(p.hasNext())
- {
- Editable editable = (Editable)p.next();
- editable.markModified();
- }
+ java.util.Iterator p = instanceList.iterator();
+ while(p.hasNext())
+ {
+ TemplateInstance instance = (TemplateInstance)p.next();
+
+ try
+ {
+ backupList.add(instance.rebuild(editables));
+ }
+ catch(UpdateFailedException e)
+ {
+ for(int i = backupList.size() - 1; i >= 0; --i)
+ {
+ instance = (TemplateInstance)instanceList.get(i);
+ instance.restore(backupList.get(i));
+ }
+ throw e;
+ }
+ }
+
+ p = editables.iterator();
+ while(p.hasNext())
+ {
+ Editable editable = (Editable)p.next();
+ editable.markModified();
+ }
}
}
diff --git a/java/src/IceGridGUI/Application/TreeNode.java b/java/src/IceGridGUI/Application/TreeNode.java
index ec5a2de73fa..8c8d6582b04 100755
--- a/java/src/IceGridGUI/Application/TreeNode.java
+++ b/java/src/IceGridGUI/Application/TreeNode.java
@@ -30,7 +30,7 @@ public abstract class TreeNode extends TreeNodeBase
//
public boolean isEphemeral()
{
- return false;
+ return false;
}
//
@@ -38,26 +38,26 @@ public abstract class TreeNode extends TreeNodeBase
//
public void destroy()
{
- assert false;
+ assert false;
}
TreeNode(TreeNode parent, String id)
{
- super(parent, id);
+ super(parent, id);
}
public Root getRoot()
{
- assert _parent != null;
- return ((TreeNode)_parent).getRoot();
+ assert _parent != null;
+ return ((TreeNode)_parent).getRoot();
}
TreeNode findChildLike(TreeNode other)
{
- //
- // Default implementation just use id; not always appropriate
- //
- return (TreeNode)findChild(other.getId());
+ //
+ // Default implementation just use id; not always appropriate
+ //
+ return (TreeNode)findChild(other.getId());
}
//
@@ -65,14 +65,14 @@ public abstract class TreeNode extends TreeNodeBase
//
Utils.Resolver getResolver()
{
- if(isEphemeral())
- {
- return null;
- }
- else
- {
- return ((TreeNode)_parent).getResolver();
- }
+ if(isEphemeral())
+ {
+ return null;
+ }
+ else
+ {
+ return ((TreeNode)_parent).getResolver();
+ }
}
//
@@ -80,266 +80,266 @@ public abstract class TreeNode extends TreeNodeBase
//
TreeNode findChildWithDescriptor(Object descriptor)
{
- Enumeration p = children();
- while(p.hasMoreElements())
- {
- TreeNode node = (TreeNode)p.nextElement();
- if(node.getDescriptor() == descriptor)
- {
- return node;
- }
- }
- return null;
+ Enumeration p = children();
+ while(p.hasMoreElements())
+ {
+ TreeNode node = (TreeNode)p.nextElement();
+ if(node.getDescriptor() == descriptor)
+ {
+ return node;
+ }
+ }
+ return null;
}
static String[] createAttribute(String name, String value)
{
- return new String[]{name, value};
+ return new String[]{name, value};
}
static void writeVariables(XMLWriter writer,
- java.util.Map variables)
- throws java.io.IOException
+ java.util.Map variables)
+ throws java.io.IOException
{
- java.util.Iterator p = variables.entrySet().iterator();
- while(p.hasNext())
- {
- java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
-
- java.util.List attributes = new java.util.LinkedList();
- attributes.add(createAttribute("name", entry.getKey().toString()));
- attributes.add(createAttribute("value", entry.getValue().toString()));
+ java.util.Iterator p = variables.entrySet().iterator();
+ while(p.hasNext())
+ {
+ java.util.Map.Entry entry = (java.util.Map.Entry)p.next();
+
+ java.util.List attributes = new java.util.LinkedList();
+ attributes.add(createAttribute("name", entry.getKey().toString()));
+ attributes.add(createAttribute("value", entry.getValue().toString()));
- writer.writeElement("variable", attributes);
- }
+ writer.writeElement("variable", attributes);
+ }
}
static void writePropertySet(XMLWriter writer, PropertySetDescriptor psd,
- java.util.List adapters, String[] logs)
- throws java.io.IOException
+ java.util.List adapters, String[] logs)
+ throws java.io.IOException
{
- writePropertySet(writer, "", "", psd, adapters, logs);
+ writePropertySet(writer, "", "", psd, adapters, logs);
}
static void writePropertySet(XMLWriter writer, String id, String idAttrName,
- PropertySetDescriptor psd,
- java.util.List adapters, String[] logs)
- throws java.io.IOException
- {
- if(id.length() == 0 && psd.references.length == 0 && psd.properties.size() == 0)
- {
- return;
- }
-
- //
- // We don't show the .Endpoint of adapters,
- // since they already appear in the Adapter descriptors
- //
- java.util.Set hiddenPropertyNames = new java.util.HashSet();
- java.util.Set hiddenPropertyValues = new java.util.HashSet();
-
- if(adapters != null)
- {
- java.util.Iterator p = adapters.iterator();
- while(p.hasNext())
- {
- AdapterDescriptor ad = (AdapterDescriptor)p.next();
- hiddenPropertyNames.add("Ice.OA." + ad.name + ".Endpoints");
-
- java.util.Iterator q = ad.objects.iterator();
- while(q.hasNext())
- {
- ObjectDescriptor od = (ObjectDescriptor)q.next();
- hiddenPropertyValues.add(Ice.Util.identityToString(od.id));
- }
- q = ad.allocatables.iterator();
- while(q.hasNext())
- {
- ObjectDescriptor od = (ObjectDescriptor)q.next();
- hiddenPropertyValues.add(Ice.Util.identityToString(od.id));
- }
- }
- }
-
- if(logs != null)
- {
- for(int i = 0; i < logs.length; ++i)
- {
- hiddenPropertyValues.add(logs[i]);
- }
- }
-
- java.util.List attributes = new java.util.LinkedList();
- if(id.length() > 0)
- {
- attributes.add(createAttribute(idAttrName, id));
- }
- if(psd.references.length == 0 && psd.properties.size() == 0)
- {
- writer.writeElement("properties", attributes);
- }
- else
- {
- writer.writeStartTag("properties", attributes);
-
- for(int i = 0; i < psd.references.length; ++i)
- {
- attributes.clear();
- attributes.add(createAttribute("refid", psd.references[i]));
- writer.writeElement("properties", attributes);
- }
-
- java.util.Iterator p = psd.properties.iterator();
- while(p.hasNext())
- {
- PropertyDescriptor pd = (PropertyDescriptor)p.next();
- if(hiddenPropertyNames.contains(pd.name))
- {
- //
- // We hide only the first occurence
- //
- hiddenPropertyNames.remove(pd.name);
- }
- else if(hiddenPropertyValues.contains(pd.value))
- {
- hiddenPropertyValues.remove(pd.value);
- }
- else
- {
- attributes.clear();
- attributes.add(createAttribute("name", pd.name));
- attributes.add(createAttribute("value", pd.value));
- writer.writeElement("property", attributes);
- }
- }
- writer.writeEndTag("properties");
- }
+ PropertySetDescriptor psd,
+ java.util.List adapters, String[] logs)
+ throws java.io.IOException
+ {
+ if(id.length() == 0 && psd.references.length == 0 && psd.properties.size() == 0)
+ {
+ return;
+ }
+
+ //
+ // We don't show the .Endpoint of adapters,
+ // since they already appear in the Adapter descriptors
+ //
+ java.util.Set hiddenPropertyNames = new java.util.HashSet();
+ java.util.Set hiddenPropertyValues = new java.util.HashSet();
+
+ if(adapters != null)
+ {
+ java.util.Iterator p = adapters.iterator();
+ while(p.hasNext())
+ {
+ AdapterDescriptor ad = (AdapterDescriptor)p.next();
+ hiddenPropertyNames.add("Ice.OA." + ad.name + ".Endpoints");
+
+ java.util.Iterator q = ad.objects.iterator();
+ while(q.hasNext())
+ {
+ ObjectDescriptor od = (ObjectDescriptor)q.next();
+ hiddenPropertyValues.add(Ice.Util.identityToString(od.id));
+ }
+ q = ad.allocatables.iterator();
+ while(q.hasNext())
+ {
+ ObjectDescriptor od = (ObjectDescriptor)q.next();
+ hiddenPropertyValues.add(Ice.Util.identityToString(od.id));
+ }
+ }
+ }
+
+ if(logs != null)
+ {
+ for(int i = 0; i < logs.length; ++i)
+ {
+ hiddenPropertyValues.add(logs[i]);
+ }
+ }
+
+ java.util.List attributes = new java.util.LinkedList();
+ if(id.length() > 0)
+ {
+ attributes.add(createAttribute(idAttrName, id));
+ }
+ if(psd.references.length == 0 && psd.properties.size() == 0)
+ {
+ writer.writeElement("properties", attributes);
+ }
+ else
+ {
+ writer.writeStartTag("properties", attributes);
+
+ for(int i = 0; i < psd.references.length; ++i)
+ {
+ attributes.clear();
+ attributes.add(createAttribute("refid", psd.references[i]));
+ writer.writeElement("properties", attributes);
+ }
+
+ java.util.Iterator p = psd.properties.iterator();
+ while(p.hasNext())
+ {
+ PropertyDescriptor pd = (PropertyDescriptor)p.next();
+ if(hiddenPropertyNames.contains(pd.name))
+ {
+ //
+ // We hide only the first occurence
+ //
+ hiddenPropertyNames.remove(pd.name);
+ }
+ else if(hiddenPropertyValues.contains(pd.value))
+ {
+ hiddenPropertyValues.remove(pd.value);
+ }
+ else
+ {
+ attributes.clear();
+ attributes.add(createAttribute("name", pd.name));
+ attributes.add(createAttribute("value", pd.value));
+ writer.writeElement("property", attributes);
+ }
+ }
+ writer.writeEndTag("properties");
+ }
}
static void writeLogs(XMLWriter writer, String[] logs, java.util.List properties)
- throws java.io.IOException
+ throws java.io.IOException
{
- for(int i = 0; i < logs.length; ++i)
- {
- java.util.List attributes = new java.util.LinkedList();
- attributes.add(createAttribute("path", logs[i]));
- String prop = lookupName(logs[i], properties);
- if(prop != null)
- {
- attributes.add(createAttribute("property", prop));
- }
- writer.writeElement("log", attributes);
- }
+ for(int i = 0; i < logs.length; ++i)
+ {
+ java.util.List attributes = new java.util.LinkedList();
+ attributes.add(createAttribute("path", logs[i]));
+ String prop = lookupName(logs[i], properties);
+ if(prop != null)
+ {
+ attributes.add(createAttribute("property", prop));
+ }
+ writer.writeElement("log", attributes);
+ }
}
static String lookupName(String val, java.util.List properties)
{
- java.util.Iterator p = properties.iterator();
- while(p.hasNext())
- {
- PropertyDescriptor pd = (PropertyDescriptor)p.next();
- if(pd.value.equals(val))
- {
- return pd.name;
- }
- }
- return null;
+ java.util.Iterator p = properties.iterator();
+ while(p.hasNext())
+ {
+ PropertyDescriptor pd = (PropertyDescriptor)p.next();
+ if(pd.value.equals(val))
+ {
+ return pd.name;
+ }
+ }
+ return null;
}
static void writeDistribution(XMLWriter writer,
- DistributionDescriptor descriptor)
- throws java.io.IOException
- {
- if(descriptor.icepatch.length() > 0)
- {
- java.util.List attributes = new java.util.LinkedList();
- attributes.add(createAttribute("icepatch", descriptor.icepatch));
-
- if(descriptor.directories.isEmpty())
- {
- writer.writeElement("distrib", attributes);
- }
- else
- {
- writer.writeStartTag("distrib", attributes);
- java.util.Iterator p = descriptor.directories.iterator();
- while(p.hasNext())
- {
- writer.writeElement("directory", p.next().toString());
- }
- writer.writeEndTag("distrib");
- }
- }
+ DistributionDescriptor descriptor)
+ throws java.io.IOException
+ {
+ if(descriptor.icepatch.length() > 0)
+ {
+ java.util.List attributes = new java.util.LinkedList();
+ attributes.add(createAttribute("icepatch", descriptor.icepatch));
+
+ if(descriptor.directories.isEmpty())
+ {
+ writer.writeElement("distrib", attributes);
+ }
+ else
+ {
+ writer.writeStartTag("distrib", attributes);
+ java.util.Iterator p = descriptor.directories.iterator();
+ while(p.hasNext())
+ {
+ writer.writeElement("directory", p.next().toString());
+ }
+ writer.writeEndTag("distrib");
+ }
+ }
}
static void writeObjects(String elt, XMLWriter writer, java.util.List objects,
- java.util.List properties)
- throws java.io.IOException
- {
- java.util.Iterator p = objects.iterator();
- while(p.hasNext())
- {
- ObjectDescriptor od = (ObjectDescriptor)p.next();
- java.util.List attributes = new java.util.LinkedList();
- String strId = Ice.Util.identityToString(od.id);
- attributes.add(createAttribute("identity", strId));
- if(od.type.length() > 0)
- {
- attributes.add(createAttribute("type", od.type));
- }
- if(properties != null)
- {
- String prop = lookupName(strId, properties);
- if(prop != null)
- {
- attributes.add(createAttribute("property", prop));
- }
- }
-
- writer.writeElement(elt, attributes);
- }
- }
+ java.util.List properties)
+ throws java.io.IOException
+ {
+ java.util.Iterator p = objects.iterator();
+ while(p.hasNext())
+ {
+ ObjectDescriptor od = (ObjectDescriptor)p.next();
+ java.util.List attributes = new java.util.LinkedList();
+ String strId = Ice.Util.identityToString(od.id);
+ attributes.add(createAttribute("identity", strId));
+ if(od.type.length() > 0)
+ {
+ attributes.add(createAttribute("type", od.type));
+ }
+ if(properties != null)
+ {
+ String prop = lookupName(strId, properties);
+ if(prop != null)
+ {
+ attributes.add(createAttribute("property", prop));
+ }
+ }
+
+ writer.writeElement(elt, attributes);
+ }
+ }
static void writeParameters(XMLWriter writer, java.util.List parameters,
- java.util.Map defaultValues)
- throws java.io.IOException
- {
- java.util.Iterator p = new java.util.LinkedHashSet(parameters).iterator();
- while(p.hasNext())
- {
- String parameter = (String)p.next();
- String val = (String)defaultValues.get(parameter);
- java.util.List attributes = new java.util.LinkedList();
- attributes.add(createAttribute("name", parameter));
- if(val != null)
- {
- attributes.add(createAttribute("default", val));
- }
- writer.writeElement("parameter", attributes);
- }
+ java.util.Map defaultValues)
+ throws java.io.IOException
+ {
+ java.util.Iterator p = new java.util.LinkedHashSet(parameters).iterator();
+ while(p.hasNext())
+ {
+ String parameter = (String)p.next();
+ String val = (String)defaultValues.get(parameter);
+ java.util.List attributes = new java.util.LinkedList();
+ attributes.add(createAttribute("name", parameter));
+ if(val != null)
+ {
+ attributes.add(createAttribute("default", val));
+ }
+ writer.writeElement("parameter", attributes);
+ }
}
static java.util.LinkedList
parameterValuesToAttributes(java.util.Map parameterValues,
- java.util.List parameters)
- {
- java.util.LinkedList result = new java.util.LinkedList();
-
- //
- // We use a LinkedHashSet to maintain order while eliminating duplicates
- //
- java.util.Iterator p = new java.util.LinkedHashSet(parameters).iterator();
- while(p.hasNext())
- {
- String param = (String)p.next();
- String val = (String)parameterValues.get(param);
- if(val != null)
- {
- result.add(createAttribute(param, val));
- }
- }
- return result;
+ java.util.List parameters)
+ {
+ java.util.LinkedList result = new java.util.LinkedList();
+
+ //
+ // We use a LinkedHashSet to maintain order while eliminating duplicates
+ //
+ java.util.Iterator p = new java.util.LinkedHashSet(parameters).iterator();
+ while(p.hasNext())
+ {
+ String param = (String)p.next();
+ String val = (String)parameterValues.get(param);
+ if(val != null)
+ {
+ result.add(createAttribute(param, val));
+ }
+ }
+ return result;
}
//
@@ -373,94 +373,94 @@ public abstract class TreeNode extends TreeNodeBase
public boolean[] getAvailableActions()
{
- return new boolean[ACTION_COUNT];
+ return new boolean[ACTION_COUNT];
}
public void newAdapter()
{
- assert false;
+ assert false;
}
public void newDbEnv()
{
- assert false;
+ assert false;
}
public void newNode()
{
- assert false;
+ assert false;
}
public void newPropertySet()
{
- assert false;
+ assert false;
}
public void newReplicaGroup()
{
- assert false;
+ assert false;
}
public void newServer()
{
- assert false;
+ assert false;
}
public void newServerIceBox()
{
- assert false;
+ assert false;
}
public void newServerFromTemplate()
{
- assert false;
+ assert false;
}
public void newService()
{
- assert false;
+ assert false;
}
public void newServiceFromTemplate()
{
- assert false;
+ assert false;
}
public void newTemplateServer()
{
- assert false;
+ assert false;
}
public void newTemplateServerIceBox()
{
- assert false;
+ assert false;
}
public void newTemplateService()
{
- assert false;
+ assert false;
}
public void copy()
{
- assert false;
+ assert false;
}
public void paste()
{
- assert false;
+ assert false;
}
public void delete()
{
- boolean enabled = getRoot().isSelectionListenerEnabled();
+ boolean enabled = getRoot().isSelectionListenerEnabled();
- if(enabled)
- {
- getRoot().disableSelectionListener();
- }
- destroy();
- getCoordinator().getCurrentTab().showNode(null);
- if(enabled)
- {
- getRoot().enableSelectionListener();
- }
+ if(enabled)
+ {
+ getRoot().disableSelectionListener();
+ }
+ destroy();
+ getCoordinator().getCurrentTab().showNode(null);
+ if(enabled)
+ {
+ getRoot().enableSelectionListener();
+ }
- if(_parent != null)
- {
- getRoot().setSelectedNode((TreeNode)_parent);
- }
+ if(_parent != null)
+ {
+ getRoot().setSelectedNode((TreeNode)_parent);
+ }
}
public void moveUp()
{
- assert false;
+ assert false;
}
public void moveDown()
{
- assert false;
+ assert false;
}
}
diff --git a/java/src/IceGridGUI/Application/UpdateFailedException.java b/java/src/IceGridGUI/Application/UpdateFailedException.java
index 6c79d5c1524..c59d580f7df 100755
--- a/java/src/IceGridGUI/Application/UpdateFailedException.java
+++ b/java/src/IceGridGUI/Application/UpdateFailedException.java
@@ -12,13 +12,13 @@ public class UpdateFailedException extends Exception
{
UpdateFailedException(TreeNode parent, String id)
{
- _parent = parent;
- _id = id;
+ _parent = parent;
+ _id = id;
}
public String toString()
{
- return _parent.getFullId().toString() + " has already a child with '" + _id + "' as ID.";
+ return _parent.getFullId().toString() + " has already a child with '" + _id + "' as ID.";
}
private TreeNode _parent;