summaryrefslogtreecommitdiff
path: root/java/src/IceGridGUI/LiveDeployment/ServiceEditor.java
diff options
context:
space:
mode:
authorBernard Normier <bernard@zeroc.com>2007-11-30 15:27:49 -0500
committerBernard Normier <bernard@zeroc.com>2007-11-30 15:27:49 -0500
commite5c6f17ce67f71bacdc4d2a01be487907e08f8cc (patch)
tree1289b3dd8e93fe0e36be8ecdff2f024bb1c57271 /java/src/IceGridGUI/LiveDeployment/ServiceEditor.java
parentMerge branch 'master' of ssh://cvs.zeroc.com/home/git/ice (diff)
downloadice-e5c6f17ce67f71bacdc4d2a01be487907e08f8cc.tar.bz2
ice-e5c6f17ce67f71bacdc4d2a01be487907e08f8cc.tar.xz
ice-e5c6f17ce67f71bacdc4d2a01be487907e08f8cc.zip
Added Properties facet to IceBox services
Diffstat (limited to 'java/src/IceGridGUI/LiveDeployment/ServiceEditor.java')
-rwxr-xr-xjava/src/IceGridGUI/LiveDeployment/ServiceEditor.java109
1 files changed, 108 insertions, 1 deletions
diff --git a/java/src/IceGridGUI/LiveDeployment/ServiceEditor.java b/java/src/IceGridGUI/LiveDeployment/ServiceEditor.java
index 5286212a131..52c957db23d 100755
--- a/java/src/IceGridGUI/LiveDeployment/ServiceEditor.java
+++ b/java/src/IceGridGUI/LiveDeployment/ServiceEditor.java
@@ -8,11 +8,19 @@
// **********************************************************************
package IceGridGUI.LiveDeployment;
+import java.awt.event.ActionEvent;
+
+import javax.swing.AbstractAction;
+import javax.swing.Action;
+import javax.swing.JButton;
import javax.swing.JCheckBox;
+import javax.swing.JScrollPane;
import javax.swing.JTextField;
-import com.jgoodies.forms.builder.DefaultFormBuilder;
import javax.swing.JToolBar;
+import com.jgoodies.forms.builder.DefaultFormBuilder;
+import com.jgoodies.forms.layout.CellConstraints;
+
import com.jgoodies.looks.Options;
import com.jgoodies.looks.HeaderStyle;
import com.jgoodies.looks.BorderStyle;
@@ -38,16 +46,55 @@ class ServiceEditor extends CommunicatorEditor
_coordinator = coordinator;
_entry.setEditable(false);
_started.setEnabled(false);
+
+ _buildId.setEditable(false);
+
+ Action refresh = new AbstractAction("Refresh")
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ _buildId.setText("Retrieving...");
+ _properties.clear();
+ _target.showRuntimeProperties();
+ }
+ };
+ refresh.putValue(Action.SHORT_DESCRIPTION,
+ "Reread the properties from the service");
+ _refreshButton = new JButton(refresh);
}
void show(Service service)
{
+ _target = service;
+
ServiceDescriptor descriptor = service.getServiceDescriptor();
Utils.Resolver resolver = service.getResolver();
show(descriptor, service.getProperties(), resolver);
_entry.setText(resolver.substitute(descriptor.entry));
_started.setSelected(service.isStarted());
+
+ Server server = (Server)service.getParent();
+
+ int iceIntVersion = server.getIceVersion();
+
+ if(server.getState() == ServerState.Active && (iceIntVersion == 0 || iceIntVersion >= 30300))
+ {
+ _buildId.setText("Retrieving...");
+ _properties.clear();
+
+ //
+ // Retrieve all properties in background
+ //
+ _target.showRuntimeProperties();
+ _refreshButton.setEnabled(true);
+ }
+ else
+ {
+ _buildId.setText("");
+ _properties.clear();
+ _refreshButton.setEnabled(false);
+ }
}
protected void appendProperties(DefaultFormBuilder builder)
@@ -56,6 +103,27 @@ class ServiceEditor extends CommunicatorEditor
builder.append("", _started);
builder.nextLine();
+
+ builder.append("Build Id");
+ builder.append(_buildId, _refreshButton);
+ builder.nextLine();
+
+ builder.append("Properties");
+ builder.nextLine();
+ builder.append("");
+ builder.nextLine();
+ builder.append("");
+
+ builder.nextLine();
+ builder.append("");
+
+ builder.nextRow(-6);
+ CellConstraints cc = new CellConstraints();
+ JScrollPane scrollPane = new JScrollPane(_properties);
+ builder.add(scrollPane,
+ cc.xywh(builder.getColumn(), builder.getRow(), 3, 7));
+ builder.nextRow(6);
+ builder.nextLine();
builder.appendSeparator("Configuration");
@@ -72,6 +140,41 @@ class ServiceEditor extends CommunicatorEditor
_propertiesPanel.setName("Service Properties");
}
+ void setBuildId(String buildString, Service service)
+ {
+ //
+ // That's to report error messages
+ //
+
+ if(service == _target)
+ {
+ _buildId.setText(buildString);
+ }
+ //
+ // Otherwise we've already moved to another server
+ //
+ }
+
+ void setRuntimeProperties(java.util.SortedMap map, Service service)
+ {
+ if(service == _target )
+ {
+ _properties.setSortedMap(map);
+
+ String buildString = (String)map.get("BuildId");
+ if(buildString == null)
+ {
+ _buildId.setText("");
+ }
+ else
+ {
+ _buildId.setText(buildString);
+ }
+ }
+ //
+ // Otherwise we've already moved to another server
+ //
+ }
private class ToolBar extends JToolBar
{
@@ -90,8 +193,12 @@ class ServiceEditor extends CommunicatorEditor
}
private final Coordinator _coordinator;
+ private Service _target;
private JTextField _entry = new JTextField(20);
private JCheckBox _started = new JCheckBox("Started");
+ private JTextField _buildId = new JTextField(20);
+ private JButton _refreshButton;
+ private TableField _properties = new TableField("Name", "Value");
private JToolBar _toolBar;
}