diff options
author | Bernard Normier <bernard@zeroc.com> | 2007-09-24 17:07:33 -0400 |
---|---|---|
committer | Bernard Normier <bernard@zeroc.com> | 2007-09-24 17:07:33 -0400 |
commit | 080656b952732140cae223651714b0a0fc460b08 (patch) | |
tree | fea62f6e795b522ac64230c0a67f7c9cd89544ef /java/src/IceGridGUI/LiveDeployment/ServerEditor.java | |
parent | Fixed test warning (diff) | |
download | ice-080656b952732140cae223651714b0a0fc460b08.tar.bz2 ice-080656b952732140cae223651714b0a0fc460b08.tar.xz ice-080656b952732140cae223651714b0a0fc460b08.zip |
Squashed commit of the following:
commit 67f0310e1125b278157942d1387f694d9bf9921a
Author: Bernard Normier <bernard@zeroc.com>
Date: Mon Sep 24 16:56:17 2007 -0400
Added ability to retrieve server properties from IceGrid GUI
Diffstat (limited to 'java/src/IceGridGUI/LiveDeployment/ServerEditor.java')
-rwxr-xr-x | java/src/IceGridGUI/LiveDeployment/ServerEditor.java | 130 |
1 files changed, 117 insertions, 13 deletions
diff --git a/java/src/IceGridGUI/LiveDeployment/ServerEditor.java b/java/src/IceGridGUI/LiveDeployment/ServerEditor.java index c216a4c9d71..d46894fbde1 100755 --- a/java/src/IceGridGUI/LiveDeployment/ServerEditor.java +++ b/java/src/IceGridGUI/LiveDeployment/ServerEditor.java @@ -41,16 +41,17 @@ class ServerEditor extends CommunicatorEditor return _toolBar; } - ServerEditor(Coordinator c) { _coordinator = c; _currentState.setEditable(false); - _currentPid.setEditable(false); _enabled.setEnabled(false); + _currentPid.setEditable(false); + _buildId.setEditable(false); _application.setEditable(false); _exe.setEditable(false); + _iceVersion.setEditable(false); _pwd.setEditable(false); _activation.setEditable(false); @@ -65,6 +66,19 @@ class ServerEditor extends CommunicatorEditor _icepatch.setEditable(false); _directories.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 server"); + _refreshButton = new JButton(refresh); + Action gotoApplication = new AbstractAction( "", Utils.getIcon("/icons/16x16/goto.png")) { @@ -89,35 +103,63 @@ class ServerEditor extends CommunicatorEditor _target = server; ServerState state = server.getState(); + ServerDescriptor descriptor = server.getServerDescriptor(); + final Utils.Resolver resolver = server.getResolver(); + if(state == null) { _currentState.setText("Unknown"); - _currentPid.setText(""); _enabled.setSelected(false); + _currentPid.setText(""); + _buildId.setText("Unknown"); + _properties.clear(); + _refreshButton.setEnabled(false); } else { _currentState.setText(state.toString()); + _enabled.setSelected(server.isEnabled()); int pid = server.getPid(); if(pid == 0) { _currentPid.setText(""); + _buildId.setText(""); + _properties.clear(); + _refreshButton.setEnabled(false); } else { _currentPid.setText(Integer.toString(pid)); + + int iceIntVersion = Utils.getIntVersion(resolver.substitute(descriptor.iceVersion)); + + if(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); + } } - _enabled.setSelected(server.isEnabled()); } - ServerDescriptor descriptor = server.getServerDescriptor(); - final Utils.Resolver resolver = server.getResolver(); - + _application.setText(resolver.find("application")); super.show(descriptor, server.getProperties(), resolver); _exe.setText(resolver.substitute(descriptor.exe)); + _iceVersion.setText(resolver.substitute(descriptor.iceVersion)); _pwd.setText(resolver.substitute(descriptor.pwd)); Ice.StringHolder toolTipHolder = new Ice.StringHolder(); @@ -162,6 +204,41 @@ class ServerEditor extends CommunicatorEditor _directories.setToolTipText(toolTip); } + void setBuildId(String buildString, Server server) + { + // + // That's to report error messages + // + + if(server == _target && _target.getPid() != 0) + { + _buildId.setText(buildString); + } + // + // Otherwise we've already moved to another server + // + } + + void setRuntimeProperties(java.util.SortedMap map, Server server) + { + if(server == _target && _target.getPid() != 0) + { + _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 + // + } protected void appendProperties(DefaultFormBuilder builder) { @@ -171,11 +248,32 @@ class ServerEditor extends CommunicatorEditor builder.append(_currentState, 3); builder.nextLine(); - builder.append("Process ID"); + builder.append("", _enabled); + builder.nextLine(); + + builder.append("Process Id"); builder.append(_currentPid, 3); builder.nextLine(); - - builder.append("", _enabled); + + 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"); @@ -194,6 +292,9 @@ class ServerEditor extends CommunicatorEditor builder.append("Path to Executable"); builder.append(_exe, 3); builder.nextLine(); + builder.append("Ice Version"); + builder.append(_iceVersion, 3); + builder.nextLine(); builder.append("Working Directory"); builder.append(_pwd, 3); builder.nextLine(); @@ -211,8 +312,7 @@ class ServerEditor extends CommunicatorEditor builder.nextLine(); builder.append(""); builder.nextRow(-6); - CellConstraints cc = new CellConstraints(); - JScrollPane scrollPane = new JScrollPane(_envs); + scrollPane = new JScrollPane(_envs); builder.add(scrollPane, cc.xywh(builder.getColumn(), builder.getRow(), 3, 7)); builder.nextRow(6); @@ -274,13 +374,17 @@ class ServerEditor extends CommunicatorEditor private Server _target; private JTextField _currentState = new JTextField(20); - private JTextField _currentPid = new JTextField(20); private JCheckBox _enabled = new JCheckBox("Enabled"); + private JTextField _currentPid = new JTextField(20); + private JTextField _buildId = new JTextField(20); + private JButton _refreshButton; + private TableField _properties = new TableField("Name", "Value"); private JTextField _application = new JTextField(20); private JButton _gotoApplication; private JTextField _exe = new JTextField(20); + private JTextField _iceVersion = new JTextField(20); private JTextField _pwd = new JTextField(20); private JTextField _user = new JTextField(20); |