summaryrefslogtreecommitdiff
path: root/java/src
diff options
context:
space:
mode:
authorBernard Normier <bernard@zeroc.com>2005-10-09 22:36:20 +0000
committerBernard Normier <bernard@zeroc.com>2005-10-09 22:36:20 +0000
commit2f019f2a8986deadeb1c5c127bdca556be2714d3 (patch)
tree40923225e2edef06c2543a23af545f777836edce /java/src
parentjava metadata (diff)
downloadice-2f019f2a8986deadeb1c5c127bdca556be2714d3.tar.bz2
ice-2f019f2a8986deadeb1c5c127bdca556be2714d3.tar.xz
ice-2f019f2a8986deadeb1c5c127bdca556be2714d3.zip
Application + Node editor (without updates) + distrib in server sub editor
Diffstat (limited to 'java/src')
-rwxr-xr-xjava/src/IceGrid/ListDialog.java6
-rwxr-xr-xjava/src/IceGrid/TableDialog.java4
-rwxr-xr-xjava/src/IceGrid/TreeNode/Application.java25
-rwxr-xr-xjava/src/IceGrid/TreeNode/ApplicationEditor.java220
-rwxr-xr-xjava/src/IceGrid/TreeNode/Node.java24
-rwxr-xr-xjava/src/IceGrid/TreeNode/NodeEditor.java122
-rwxr-xr-xjava/src/IceGrid/TreeNode/ServerSubEditor.java121
-rwxr-xr-xjava/src/IceGrid/TreeNode/ServerTemplateEditor.java2
-rwxr-xr-xjava/src/IceGrid/TreeNode/ServiceTemplateEditor.java2
-rwxr-xr-xjava/src/IceGrid/TreeNode/TemplateEditor.java3
10 files changed, 506 insertions, 23 deletions
diff --git a/java/src/IceGrid/ListDialog.java b/java/src/IceGrid/ListDialog.java
index 9ed73da9132..e5ffdc3a8ac 100755
--- a/java/src/IceGrid/ListDialog.java
+++ b/java/src/IceGrid/ListDialog.java
@@ -103,16 +103,16 @@ public class ListDialog extends JDialog
private Action _deleteRow;
}
- public ListDialog(Frame parentFrame, String title, String columnName)
+ public ListDialog(Frame parentFrame, String title)
{
super(parentFrame, title, true);
setDefaultCloseOperation(JDialog.HIDE_ON_CLOSE);
_columnNames = new java.util.Vector(1);
- _columnNames.add(columnName);
+ _columnNames.add("item");
_list = new JTable();
-
+ _list.setTableHeader(null);
Action ok = new AbstractAction("OK")
{
diff --git a/java/src/IceGrid/TableDialog.java b/java/src/IceGrid/TableDialog.java
index 152027e73fc..9b7a5376e12 100755
--- a/java/src/IceGrid/TableDialog.java
+++ b/java/src/IceGrid/TableDialog.java
@@ -156,7 +156,7 @@ public class TableDialog extends JDialog
//
// Returns null when cancel is pressed
//
- public java.util.Map show(java.util.Map map, JComponent onComponent)
+ public java.util.TreeMap show(java.util.Map map, JComponent onComponent)
{
_cancelled = true;
@@ -213,7 +213,7 @@ public class TableDialog extends JDialog
//
// Transform vector into new Map
//
- java.util.Map result = new java.util.TreeMap();
+ java.util.TreeMap result = new java.util.TreeMap();
p = vector.iterator();
while(p.hasNext())
{
diff --git a/java/src/IceGrid/TreeNode/Application.java b/java/src/IceGrid/TreeNode/Application.java
index b852a18e8fc..a6fce75b90b 100755
--- a/java/src/IceGrid/TreeNode/Application.java
+++ b/java/src/IceGrid/TreeNode/Application.java
@@ -8,15 +8,17 @@
// **********************************************************************
package IceGrid.TreeNode;
+import javax.swing.JOptionPane;
+
import IceGrid.AdapterDynamicInfo;
import IceGrid.ApplicationDescriptor;
import IceGrid.ApplicationUpdateDescriptor;
import IceGrid.Model;
import IceGrid.ServerDynamicInfo;
import IceGrid.ServerState;
+import IceGrid.SimpleInternalFrame;
import IceGrid.TemplateDescriptor;
-import javax.swing.JOptionPane;
public class Application extends EditableParent
{
@@ -115,6 +117,25 @@ public class Application extends EditableParent
return _descriptor;
}
+ public void displayProperties()
+ {
+ SimpleInternalFrame propertiesFrame = _model.getPropertiesFrame();
+
+ propertiesFrame.setTitle("Properties for " + _id);
+ if(_editor == null)
+ {
+ _editor = new ApplicationEditor(_model.getMainFrame());
+ }
+
+ _editor.show(this);
+ propertiesFrame.setContent(_editor.getComponent());
+
+ propertiesFrame.validate();
+ propertiesFrame.repaint();
+
+ }
+
+
//
// Builds the application and all its subtrees
//
@@ -409,4 +430,6 @@ public class Application extends EditableParent
private ServerTemplates _serverTemplates;
private ServiceTemplates _serviceTemplates;
private Nodes _nodes;
+
+ static private ApplicationEditor _editor;
}
diff --git a/java/src/IceGrid/TreeNode/ApplicationEditor.java b/java/src/IceGrid/TreeNode/ApplicationEditor.java
new file mode 100755
index 00000000000..4e2421bbebb
--- /dev/null
+++ b/java/src/IceGrid/TreeNode/ApplicationEditor.java
@@ -0,0 +1,220 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2005 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+package IceGrid.TreeNode;
+
+import java.awt.event.ActionEvent;
+
+import javax.swing.AbstractAction;
+import javax.swing.Action;
+import javax.swing.JButton;
+import javax.swing.JComboBox;
+import javax.swing.JFrame;
+import javax.swing.JScrollPane;
+import javax.swing.JTextArea;
+import javax.swing.JTextField;
+
+import com.jgoodies.forms.builder.DefaultFormBuilder;
+import com.jgoodies.forms.layout.CellConstraints;
+
+import IceGrid.ApplicationDescriptor;
+import IceGrid.ListDialog;
+import IceGrid.Model;
+import IceGrid.TableDialog;
+import IceGrid.Utils;
+
+class ApplicationEditor extends Editor
+{
+ protected void applyUpdate()
+ {
+ }
+
+ ApplicationEditor(JFrame parentFrame)
+ {
+ _name.getDocument().addDocumentListener(_updateListener);
+ _description.getDocument().addDocumentListener(_updateListener);
+ _variables.setEditable(false);
+
+ //
+ // Variables
+ //
+ _variablesDialog = new TableDialog(parentFrame,
+ "Variables", "Name", "Value", true);
+
+ Action openVariablesDialog = new AbstractAction("...")
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ java.util.TreeMap result = _variablesDialog.show(_variablesMap,
+ getPanel());
+ if(result != null)
+ {
+ updated();
+ _variablesMap = result;
+ setVariablesField();
+ }
+ }
+ };
+ _variablesButton = new JButton(openVariablesDialog);
+
+ //
+ // Distrib
+ //
+ _distrib = new JComboBox(new Object[]{NO_DISTRIB, DEFAULT_DISTRIB});
+ _distrib.setEditable(true);
+
+ JTextField distribTextField = (JTextField)
+ _distrib.getEditor().getEditorComponent();
+ distribTextField.getDocument().addDocumentListener(
+ _updateListener);
+
+ _distribDirs.setEditable(false);
+ _distribDirsDialog = new ListDialog(parentFrame,
+ "Directories");
+
+ Action openDistribDirsDialog = new AbstractAction("...")
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ java.util.LinkedList result = _distribDirsDialog.show(
+ _distribDirsList, getPanel());
+ if(result != null)
+ {
+ updated();
+ _distribDirsList = result;
+ setDistribDirsField();
+ }
+ }
+ };
+ _distribDirsButton = new JButton(openDistribDirsDialog);
+
+ }
+
+ void append(DefaultFormBuilder builder)
+ {
+ 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("Variables", _variables);
+ builder.append(_variablesButton);
+ builder.nextLine();
+
+ builder.appendSeparator("Installation");
+ builder.append("IcePatch2 Proxy");
+ builder.append(_distrib, 3);
+ builder.nextLine();
+ builder.append("Directories");
+ builder.append(_distribDirs, _distribDirsButton);
+ builder.nextLine();
+ }
+
+ boolean isSimpleUpdate()
+ {
+ ApplicationDescriptor descriptor = (ApplicationDescriptor)_target.getDescriptor();
+ return (_variablesMap.equals(descriptor.variables));
+ }
+
+ void writeDescriptor()
+ {
+ ApplicationDescriptor descriptor = (ApplicationDescriptor)_target.getDescriptor();
+ descriptor.variables = _variablesMap;
+ descriptor.description = _description.getText();
+
+ if(_distrib.getSelectedItem() == NO_DISTRIB)
+ {
+ descriptor.distrib.icepatch = "";
+ }
+ else
+ {
+ descriptor.distrib.icepatch = _distrib.getSelectedItem().toString();
+ }
+ descriptor.distrib.directories = _distribDirsList;
+ }
+
+
+ void show(Application application)
+ {
+ detectUpdates(false);
+ setTarget(application);
+
+ _name.setText(_target.getId());
+ _name.setEditable(_target.isEphemeral());
+
+ ApplicationDescriptor descriptor = (ApplicationDescriptor)_target.getDescriptor();
+
+ _description.setText(descriptor.description);
+
+ _variablesMap = descriptor.variables;
+ setVariablesField();
+
+ if(descriptor.distrib.icepatch.equals(""))
+ {
+ _distrib.setSelectedItem(NO_DISTRIB);
+ }
+ else
+ {
+ _distrib.setSelectedItem(descriptor.distrib.icepatch);
+ }
+ _distribDirsList = new java.util.LinkedList(descriptor.distrib.directories);
+ setDistribDirsField();
+
+ _applyButton.setEnabled(application.isEphemeral());
+ _discardButton.setEnabled(application.isEphemeral());
+ detectUpdates(true);
+ }
+
+ private void setDistribDirsField()
+ {
+ Ice.StringHolder toolTipHolder = new Ice.StringHolder();
+ _distribDirs.setText(
+ Utils.stringify(_distribDirsList, ", ", toolTipHolder));
+ _distribDirs.setToolTipText(toolTipHolder.value);
+ }
+
+ private void setVariablesField()
+ {
+ Ice.StringHolder toolTipHolder = new Ice.StringHolder();
+ _variables.setText(
+ Utils.stringify(_variablesMap, "=", ", ", toolTipHolder));
+ _variables.setToolTipText(toolTipHolder.value);
+ }
+
+ static private final Object NO_DISTRIB = new Object()
+ {
+ public String toString()
+ {
+ return "None selected";
+ }
+ };
+ static private final String DEFAULT_DISTRIB = "${application}.Icepatch2";
+
+ private JTextField _name = new JTextField(20);
+ private JTextArea _description = new JTextArea(3, 20);
+
+ private JTextField _variables = new JTextField(20);
+ private JButton _variablesButton;
+ private TableDialog _variablesDialog;
+ private java.util.TreeMap _variablesMap;
+
+ private JComboBox _distrib;
+ private JTextField _distribDirs = new JTextField(20);
+ private java.util.LinkedList _distribDirsList;
+ private ListDialog _distribDirsDialog;
+ private JButton _distribDirsButton;
+}
diff --git a/java/src/IceGrid/TreeNode/Node.java b/java/src/IceGrid/TreeNode/Node.java
index 46ff6a05daf..0d9ccf529bc 100755
--- a/java/src/IceGrid/TreeNode/Node.java
+++ b/java/src/IceGrid/TreeNode/Node.java
@@ -24,6 +24,7 @@ import IceGrid.AdapterDynamicInfo;
import IceGrid.ServerDescriptor;
import IceGrid.ServerInstanceDescriptor;
import IceGrid.ServerState;
+import IceGrid.SimpleInternalFrame;
import IceGrid.TemplateDescriptor;
import IceGrid.Utils;
@@ -82,6 +83,27 @@ class Node extends EditableParent implements InstanceParent
tree, value, sel, expanded, leaf, row, hasFocus);
}
+ public void displayProperties()
+ {
+ SimpleInternalFrame propertiesFrame = _model.getPropertiesFrame();
+
+ propertiesFrame.setTitle("Properties for " + _id);
+ if(_editor == null)
+ {
+ _editor = new NodeEditor(_model.getMainFrame());
+ }
+
+ _editor.show(this);
+ propertiesFrame.setContent(_editor.getComponent());
+
+ propertiesFrame.validate();
+ propertiesFrame.repaint();
+ }
+
+ public Object getDescriptor()
+ {
+ return _descriptor;
+ }
static private class Backup
{
@@ -769,4 +791,6 @@ class Node extends EditableParent implements InstanceParent
static private Icon _nodeUpClosed;
static private Icon _nodeDownOpen;
static private Icon _nodeDownClosed;
+
+ static private NodeEditor _editor;
}
diff --git a/java/src/IceGrid/TreeNode/NodeEditor.java b/java/src/IceGrid/TreeNode/NodeEditor.java
new file mode 100755
index 00000000000..5d8bffb6d96
--- /dev/null
+++ b/java/src/IceGrid/TreeNode/NodeEditor.java
@@ -0,0 +1,122 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2005 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+package IceGrid.TreeNode;
+
+import java.awt.event.ActionEvent;
+
+import javax.swing.AbstractAction;
+import javax.swing.Action;
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.JTextField;
+
+import com.jgoodies.forms.builder.DefaultFormBuilder;
+
+import IceGrid.Model;
+import IceGrid.NodeDescriptor;
+import IceGrid.TableDialog;
+import IceGrid.Utils;
+
+class NodeEditor extends Editor
+{
+ protected void applyUpdate()
+ {
+ }
+
+ NodeEditor(JFrame parentFrame)
+ {
+ _name.getDocument().addDocumentListener(_updateListener);
+ _variables.setEditable(false);
+
+ //
+ // Variables
+ //
+ _variablesDialog = new TableDialog(parentFrame,
+ "Variables", "Name", "Value", true);
+
+ Action openVariablesDialog = new AbstractAction("...")
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ java.util.TreeMap result = _variablesDialog.show(_variablesMap,
+ getPanel());
+ if(result != null)
+ {
+ updated();
+ _variablesMap = result;
+ setVariablesField();
+ }
+ }
+ };
+ _variablesButton = new JButton(openVariablesDialog);
+
+ _loadFactor.getDocument().addDocumentListener(_updateListener);
+ }
+
+ void append(DefaultFormBuilder builder)
+ {
+ builder.append("Name");
+ builder.append(_name, 3);
+ builder.nextLine();
+ builder.append("Variables", _variables);
+ builder.append(_variablesButton);
+ builder.nextLine();
+ }
+
+ boolean isSimpleUpdate()
+ {
+ NodeDescriptor descriptor = (NodeDescriptor)_target.getDescriptor();
+ return (_variablesMap.equals(descriptor.variables));
+ }
+
+ void writeDescriptor()
+ {
+ NodeDescriptor descriptor = (NodeDescriptor)_target.getDescriptor();
+ descriptor.variables = _variablesMap;
+ descriptor.loadFactor = _loadFactor.getText();
+ }
+
+
+ void show(Node node)
+ {
+ detectUpdates(false);
+ setTarget(node);
+
+ _name.setText(_target.getId());
+ _name.setEditable(_target.isEphemeral());
+
+ NodeDescriptor descriptor = (NodeDescriptor)_target.getDescriptor();
+
+ _variablesMap = descriptor.variables;
+ setVariablesField();
+
+ _loadFactor.setText(descriptor.loadFactor);
+
+ _applyButton.setEnabled(node.isEphemeral());
+ _discardButton.setEnabled(node.isEphemeral());
+ detectUpdates(true);
+ }
+
+ private void setVariablesField()
+ {
+ Ice.StringHolder toolTipHolder = new Ice.StringHolder();
+ _variables.setText(
+ Utils.stringify(_variablesMap, "=", ", ", toolTipHolder));
+ _variables.setToolTipText(toolTipHolder.value);
+ }
+
+
+ private JTextField _name = new JTextField(20);
+ private JTextField _variables = new JTextField(20);
+ private JButton _variablesButton;
+ private TableDialog _variablesDialog;
+ private java.util.TreeMap _variablesMap;
+ private JTextField _loadFactor = new JTextField(20);
+
+}
diff --git a/java/src/IceGrid/TreeNode/ServerSubEditor.java b/java/src/IceGrid/TreeNode/ServerSubEditor.java
index 0855b89a077..65945f6ba6a 100755
--- a/java/src/IceGrid/TreeNode/ServerSubEditor.java
+++ b/java/src/IceGrid/TreeNode/ServerSubEditor.java
@@ -18,6 +18,7 @@ import javax.swing.JFrame;
import javax.swing.JTextField;
import com.jgoodies.forms.builder.DefaultFormBuilder;
+import com.jgoodies.forms.layout.CellConstraints;
import IceGrid.ListDialog;
import IceGrid.Model;
@@ -27,15 +28,10 @@ import IceGrid.Utils;
class ServerSubEditor extends CommunicatorSubEditor
{
- static final String ON_DEMAND = "on-demand";
- static final String MANUAL = "manual";
-
ServerSubEditor(Editor mainEditor, JFrame parentFrame)
{
super(mainEditor, parentFrame);
- _activation = new JComboBox(new Object[]{ON_DEMAND, MANUAL});
-
_id.getDocument().addDocumentListener(
_mainEditor.getUpdateListener());
_exe.getDocument().addDocumentListener(
@@ -46,10 +42,11 @@ class ServerSubEditor extends CommunicatorSubEditor
_options.setEditable(false);
_envs.setEditable(false);
+ _activation = new JComboBox(new Object[]{ON_DEMAND, MANUAL});
JTextField activationTextField = (JTextField)
_activation.getEditor().getEditorComponent();
activationTextField.getDocument().addDocumentListener(
- _mainEditor.getUpdateListener());
+ _mainEditor.getUpdateListener());
_activationTimeout.getDocument().addDocumentListener(
_mainEditor.getUpdateListener());
@@ -76,8 +73,7 @@ class ServerSubEditor extends CommunicatorSubEditor
_envButton = new JButton(openEnvDialog);
_optionDialog = new ListDialog(parentFrame,
- "Command Arguments",
- "Argument");
+ "Command Arguments");
Action openOptionDialog = new AbstractAction("...")
{
public void actionPerformed(ActionEvent e)
@@ -94,6 +90,32 @@ class ServerSubEditor extends CommunicatorSubEditor
};
_optionButton = new JButton(openOptionDialog);
+
+ _distrib = new JComboBox(new Object[]{NO_DISTRIB, DEFAULT_DISTRIB});
+ JTextField distribTextField = (JTextField)
+ _distrib.getEditor().getEditorComponent();
+ distribTextField.getDocument().addDocumentListener(
+ _mainEditor.getUpdateListener());
+
+ _distribDirs.setEditable(false);
+ _distribDirsDialog = new ListDialog(parentFrame,
+ "Directories");
+
+ Action openDistribDirsDialog = new AbstractAction("...")
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ java.util.LinkedList result = _distribDirsDialog.show(
+ _distribDirsList, _mainEditor.getPanel());
+ if(result != null)
+ {
+ _mainEditor.updated();
+ _distribDirsList = result;
+ setDistribDirsField();
+ }
+ }
+ };
+ _distribDirsButton = new JButton(openDistribDirsDialog);
}
ServerDescriptor getServerDescriptor()
@@ -113,6 +135,8 @@ class ServerSubEditor extends CommunicatorSubEditor
//
super.append(builder);
+
+ builder.appendSeparator("Activation");
builder.append("Path to Executable");
builder.append(_exe, 3);
builder.nextLine();
@@ -134,6 +158,13 @@ class ServerSubEditor extends CommunicatorSubEditor
builder.append("Deactivation Timeout");
builder.append(_deactivationTimeout, 3);
builder.nextLine();
+ builder.appendSeparator("Installation");
+ builder.append("IcePatch2 Proxy");
+ builder.append(_distrib, 3);
+ builder.nextLine();
+ builder.append("Directories");
+ builder.append(_distribDirs, _distribDirsButton);
+ builder.nextLine();
}
void writeDescriptor()
@@ -158,6 +189,16 @@ class ServerSubEditor extends CommunicatorSubEditor
descriptor.activationTimeout = _activationTimeout.getText();
descriptor.deactivationTimeout = _deactivationTimeout.getText();
+ if(_distrib.getSelectedItem() == NO_DISTRIB)
+ {
+ descriptor.distrib.icepatch = "";
+ }
+ else
+ {
+ descriptor.distrib.icepatch = _distrib.getSelectedItem().toString();
+ }
+ descriptor.distrib.directories = _distribDirsList;
+
super.writeDescriptor(descriptor);
}
@@ -241,6 +282,25 @@ class ServerSubEditor extends CommunicatorSubEditor
Utils.substitute(descriptor.deactivationTimeout, detailResolver));
_deactivationTimeout.setEditable(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);
+
+ _distribDirsList = new java.util.LinkedList(descriptor.distrib.directories);
+ setDistribDirsField();
+ _distribDirsButton.setEnabled(isEditable);
+
show(descriptor, isEditable);
}
@@ -284,26 +344,59 @@ class ServerSubEditor extends CommunicatorSubEditor
Utils.stringify(_optionList, stringifier, " ", toolTipHolder));
_options.setToolTipText(toolTipHolder.value);
}
+
+ private void setDistribDirsField()
+ {
+ final Utils.Resolver resolver = _mainEditor.getDetailResolver();
+
+ Ice.StringHolder toolTipHolder = new Ice.StringHolder();
+ Utils.Stringifier stringifier = new Utils.Stringifier()
+ {
+ public String toString(Object obj)
+ {
+ return Utils.substitute((String)obj, resolver);
+ }
+ };
+
+ _distribDirs.setText(
+ Utils.stringify(_distribDirsList, stringifier, ", ", toolTipHolder));
+ _distribDirs.setToolTipText(toolTipHolder.value);
+ }
+
+ static private final String ON_DEMAND = "on-demand";
+ static private final String MANUAL = "manual";
+ static private final Object NO_DISTRIB = new Object()
+ {
+ public String toString()
+ {
+ return "None selected";
+ }
+ };
+
+ static private final String DEFAULT_DISTRIB = "${application}.Icepatch2";
private JTextField _id = new JTextField(20);
private JTextField _exe = new JTextField(20);
private JTextField _pwd = new JTextField(20);
- private JTextField _options = new JTextField(20);
- private JTextField _envs = new JTextField(20);
-
+
private JComboBox _activation;
private JTextField _activationTimeout = new JTextField(20);
private JTextField _deactivationTimeout = new JTextField(20);
+ private JTextField _envs = new JTextField(20);
private java.util.Map _envMap;
private TableDialog _envDialog;
private JButton _envButton;
+ private JTextField _options = new JTextField(20);
private java.util.LinkedList _optionList;
private ListDialog _optionDialog;
private JButton _optionButton;
+
+ private JComboBox _distrib;
- //
- // TODO: patch
- //
+ private JTextField _distribDirs = new JTextField(20);
+ private java.util.LinkedList _distribDirsList;
+ private ListDialog _distribDirsDialog;
+ private JButton _distribDirsButton;
}
diff --git a/java/src/IceGrid/TreeNode/ServerTemplateEditor.java b/java/src/IceGrid/TreeNode/ServerTemplateEditor.java
index c6296e2217d..ca4898ad88c 100755
--- a/java/src/IceGrid/TreeNode/ServerTemplateEditor.java
+++ b/java/src/IceGrid/TreeNode/ServerTemplateEditor.java
@@ -34,6 +34,8 @@ class ServerTemplateEditor extends TemplateEditor
void append(DefaultFormBuilder builder)
{
super.append(builder);
+ builder.appendSeparator();
+ builder.nextLine();
_subEditor.append(builder);
}
diff --git a/java/src/IceGrid/TreeNode/ServiceTemplateEditor.java b/java/src/IceGrid/TreeNode/ServiceTemplateEditor.java
index 4215c3206a6..3ec834de351 100755
--- a/java/src/IceGrid/TreeNode/ServiceTemplateEditor.java
+++ b/java/src/IceGrid/TreeNode/ServiceTemplateEditor.java
@@ -34,6 +34,8 @@ class ServiceTemplateEditor extends TemplateEditor
void append(DefaultFormBuilder builder)
{
super.append(builder);
+ builder.appendSeparator();
+ builder.nextLine();
_subEditor.append(builder);
}
diff --git a/java/src/IceGrid/TreeNode/TemplateEditor.java b/java/src/IceGrid/TreeNode/TemplateEditor.java
index fa883acb9b8..4427cbf6022 100755
--- a/java/src/IceGrid/TreeNode/TemplateEditor.java
+++ b/java/src/IceGrid/TreeNode/TemplateEditor.java
@@ -92,9 +92,6 @@ class TemplateEditor extends Editor
builder.append("Parameters", _parameters);
builder.append(_parametersButton);
builder.nextLine();
-
- builder.appendSeparator();
- builder.nextLine();
}
void show()