diff options
author | Bernard Normier <bernard@zeroc.com> | 2006-03-29 21:21:02 +0000 |
---|---|---|
committer | Bernard Normier <bernard@zeroc.com> | 2006-03-29 21:21:02 +0000 |
commit | 20744ae1f1182d08e26b175f59d14041aabaf754 (patch) | |
tree | 937d125b80663966b3a61e13e744e28daf1f22da /java/src/IceGrid/TreeNode/Nodes.java | |
parent | Java metadata (diff) | |
download | ice-20744ae1f1182d08e26b175f59d14041aabaf754.tar.bz2 ice-20744ae1f1182d08e26b175f59d14041aabaf754.tar.xz ice-20744ae1f1182d08e26b175f59d14041aabaf754.zip |
IceGrid GUI refactoring
Diffstat (limited to 'java/src/IceGrid/TreeNode/Nodes.java')
-rwxr-xr-x | java/src/IceGrid/TreeNode/Nodes.java | 370 |
1 files changed, 0 insertions, 370 deletions
diff --git a/java/src/IceGrid/TreeNode/Nodes.java b/java/src/IceGrid/TreeNode/Nodes.java deleted file mode 100755 index 196582c05b1..00000000000 --- a/java/src/IceGrid/TreeNode/Nodes.java +++ /dev/null @@ -1,370 +0,0 @@ -// ********************************************************************** -// -// 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 IceGrid.TreeNode;
-
-import javax.swing.JMenuItem;
-import javax.swing.JPopupMenu;
-
-import IceGrid.ApplicationDescriptor;
-import IceGrid.NodeDescriptor;
-import IceGrid.TreeModelI;
-import IceGrid.Model;
-import IceGrid.NodeDescriptor;
-import IceGrid.NodeDynamicInfo;
-import IceGrid.NodeInfo;
-import IceGrid.NodeUpdateDescriptor;
-import IceGrid.ServerDynamicInfo;
-import IceGrid.AdapterDynamicInfo;
-import IceGrid.ServerState;
-
-public class Nodes extends EditableParent
-{
- static public java.util.HashMap
- copyDescriptors(java.util.Map descriptors)
- {
- java.util.HashMap 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];
-
- Object descriptor = _model.getClipboard();
- if(descriptor != null)
- {
- actions[PASTE] = descriptor instanceof NodeDescriptor;
- }
- actions[NEW_NODE] = true;
- return actions;
- }
-
- public JPopupMenu getPopupMenu()
- {
- if(_popup == null)
- {
- _popup = new PopupMenu(_model);
-
- JMenuItem newNodeItem =
- new JMenuItem(_model.getActions()[NEW_NODE]);
- newNodeItem.setText("New node");
- _popup.add(newNodeItem);
- }
- return _popup;
- }
-
- public void paste()
- {
- Object descriptor = _model.getClipboard();
- newNode(Node.copyDescriptor((NodeDescriptor)descriptor));
- }
- public void newNode()
- {
- newNode(new NodeDescriptor(
- new java.util.TreeMap(),
- new java.util.LinkedList(),
- new java.util.LinkedList(),
- "",
- ""
- ));
- }
-
- public Nodes(java.util.Map nodeMap, Application application)
- throws UpdateFailedException
- {
- super(false, "Nodes", application.getModel());
- _descriptors = nodeMap;
-
- java.util.Iterator p = nodeMap.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();
- addChild(new Node(false, nodeName, nodeDescriptor,
- application,
- _model.getRoot().getStaticNodeInfo(nodeName)));
- }
-
- //
- // Also create a Node for each node that is up
- //
- p = _model.getRoot().getNodesUp().iterator();
- while(p.hasNext())
- {
- String nodeName = (String)p.next();
- if(findChild(nodeName) == null)
- {
- addChild(new Node(false, nodeName, null, application,
- _model.getRoot().getStaticNodeInfo(nodeName)));
- }
- }
- }
-
- //
- // Try to rebuild all my children
- // No-op if it fails
- //
- void rebuild() throws UpdateFailedException
- {
- 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;
- }
- }
-
- //
- // Success
- //
- p = editables.iterator();
- while(p.hasNext())
- {
- Editable editable = (Editable)p.next();
- editable.markModified();
- }
- }
-
- 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;
- }
-
- void removeServerInstances(String 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;
- }
-
-
- void removeServiceInstances(String 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
- {
- Application application = (Application)getParent();
-
- //
- // 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);
-
- if(node == null)
- {
- NodeDescriptor nodeDescriptor = new NodeDescriptor(update.variables,
- update.serverInstances,
- update.servers,
- update.loadFactor.value,
- update.description.value);
- _descriptors.put(update.name, nodeDescriptor);
- node = new Node(false, update.name, nodeDescriptor, application, null);
- 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);
- }
- }
-
- addChildren((CommonBaseI[])newChildren.toArray(new CommonBaseI[0]));
- }
-
- void nodeUp(String nodeName, NodeInfo staticInfo)
- {
- Node node = findNode(nodeName);
- if(node == null)
- {
- try
- {
- node = new Node(false, nodeName, null, getApplication(),
- staticInfo);
- addChild(node, true);
- }
- catch(UpdateFailedException e)
- {
- // Impossible
- assert false;
- }
- }
- else
- {
- node.up(staticInfo);
- }
- }
-
- void nodeDown(String nodeName)
- {
- //
- // We remove nodes that are down and without descriptor
- //
- Node node = findNode(nodeName);
- if(node != null)
- {
- if(node.down())
- {
- removeChild(nodeName, true);
- }
- }
- //
- // Else log a warning?
- //
- }
-
- Node findNode(String 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;
- }
-
- void addDescriptor(String nodeName, NodeDescriptor descriptor)
- {
- _descriptors.put(nodeName, descriptor);
- }
- void removeDescriptor(String nodeName)
- {
- _descriptors.remove(nodeName);
- }
-
- void tryAdd(String nodeName, NodeDescriptor descriptor)
- throws UpdateFailedException
- {
- try
- {
- Node node = new Node(true, nodeName, descriptor, getApplication(), null);
- addChild(node, true);
- }
- catch(UpdateFailedException e)
- {
- e.addParent(this);
- throw e;
- }
- _descriptors.put(nodeName, descriptor);
- }
-
- private void newNode(NodeDescriptor descriptor)
- {
- String name = makeNewChildId("NewNode");
-
- Node node = new Node(name, descriptor, _model);
- try
- {
- addChild(node, true);
- }
- catch(UpdateFailedException e)
- {
- assert false;
- }
- _model.setSelectionPath(node.getPath());
- }
-
-
- private java.util.Map _descriptors;
- static private JPopupMenu _popup;
-}
|