summaryrefslogtreecommitdiff
path: root/java/src/IceGridGUI/LiveDeployment/Adapter.java
diff options
context:
space:
mode:
authorBernard Normier <bernard@zeroc.com>2006-03-29 21:21:02 +0000
committerBernard Normier <bernard@zeroc.com>2006-03-29 21:21:02 +0000
commit20744ae1f1182d08e26b175f59d14041aabaf754 (patch)
tree937d125b80663966b3a61e13e744e28daf1f22da /java/src/IceGridGUI/LiveDeployment/Adapter.java
parentJava metadata (diff)
downloadice-20744ae1f1182d08e26b175f59d14041aabaf754.tar.bz2
ice-20744ae1f1182d08e26b175f59d14041aabaf754.tar.xz
ice-20744ae1f1182d08e26b175f59d14041aabaf754.zip
IceGrid GUI refactoring
Diffstat (limited to 'java/src/IceGridGUI/LiveDeployment/Adapter.java')
-rwxr-xr-xjava/src/IceGridGUI/LiveDeployment/Adapter.java169
1 files changed, 169 insertions, 0 deletions
diff --git a/java/src/IceGridGUI/LiveDeployment/Adapter.java b/java/src/IceGridGUI/LiveDeployment/Adapter.java
new file mode 100755
index 00000000000..5add2303c42
--- /dev/null
+++ b/java/src/IceGridGUI/LiveDeployment/Adapter.java
@@ -0,0 +1,169 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2006 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 IceGridGUI.LiveDeployment;
+
+import java.awt.Component;
+
+import javax.swing.Icon;
+import javax.swing.JTree;
+import javax.swing.tree.DefaultTreeCellRenderer;
+import javax.swing.tree.TreeModel;
+import javax.swing.tree.TreePath;
+
+import java.util.Enumeration;
+
+import IceGrid.*;
+import IceGridGUI.*;
+
+
+class Adapter extends TreeNode
+{
+ public Editor getEditor()
+ {
+ if(_editor == null)
+ {
+ _editor = new AdapterEditor();
+ }
+ _editor.show(this);
+ return _editor;
+ }
+
+ public Component getTreeCellRendererComponent(
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
+ {
+ if(_cellRenderer == null)
+ {
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _activeIcon = Utils.getIcon("/icons/16x16/adapter_active.png");
+ _inactiveIcon = Utils.getIcon("/icons/16x16/adapter_inactive.png");
+ }
+
+ if(_currentEndpoints == null || _currentEndpoints.length() == 0)
+ {
+ _cellRenderer.setLeafIcon(_inactiveIcon);
+ }
+ else
+ {
+ _cellRenderer.setLeafIcon(_activeIcon);
+ }
+
+ _cellRenderer.setToolTipText(_toolTip);
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
+ }
+
+ Adapter(TreeNode parent, String adapterName, Utils.Resolver resolver,
+ String adapterId, AdapterDescriptor descriptor, Ice.ObjectPrx proxy)
+ {
+ super(parent, adapterName);
+ _resolver = resolver;
+ _adapterId = adapterId;
+ _descriptor = descriptor;
+
+ setCurrentEndpoints(proxy);
+ }
+
+ AdapterDescriptor getDescriptor()
+ {
+ return _descriptor;
+ }
+
+ Utils.Resolver getResolver()
+ {
+ return _resolver;
+ }
+
+ String getCurrentEndpoints()
+ {
+ return _currentEndpoints;
+ }
+
+ String getProperty(String name)
+ {
+ Server server = (Server)_parent;
+ return server.getProperty(_descriptor.name + "." + name);
+ }
+
+ boolean update(AdapterDynamicInfo info)
+ {
+ if(info == null)
+ {
+ setCurrentEndpoints(null);
+ getRoot().getTreeModel().nodeChanged(this);
+ return true;
+ }
+ else if(info.id.equals(_adapterId))
+ {
+ setCurrentEndpoints(info.proxy);
+ getRoot().getTreeModel().nodeChanged(this);
+ return true;
+ }
+ else
+ {
+ return false;
+ }
+ }
+
+ boolean update(java.util.List infoList)
+ {
+ java.util.Iterator p = infoList.iterator();
+ while(p.hasNext())
+ {
+ AdapterDynamicInfo info = (AdapterDynamicInfo)p.next();
+ if(update(info))
+ {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ private void setCurrentEndpoints(Ice.ObjectPrx proxy)
+ {
+ if(proxy == null)
+ {
+ _currentEndpoints = null;
+ _toolTip = "Inactive";
+ }
+ else
+ {
+ String str = getCoordinator().getCommunicator().proxyToString(proxy);
+ int index = str.indexOf(':');
+ if(index == -1 || index == str.length() - 1)
+ {
+ _currentEndpoints = "";
+ }
+ else
+ {
+ _currentEndpoints = str.substring(index + 1);
+ }
+ _toolTip = "Published endpoints: " + _currentEndpoints;
+ }
+ }
+
+
+ private AdapterDescriptor _descriptor;
+ private Utils.Resolver _resolver;
+ private String _adapterId;
+
+ private String _currentEndpoints;
+ private String _toolTip;
+
+ static private DefaultTreeCellRenderer _cellRenderer;
+ static private Icon _activeIcon;
+ static private Icon _inactiveIcon;
+
+ static private AdapterEditor _editor;
+}