summaryrefslogtreecommitdiff
path: root/java/src/IceGrid/TreeNode/EditableParent.java
diff options
context:
space:
mode:
authorBernard Normier <bernard@zeroc.com>2005-08-31 18:03:10 +0000
committerBernard Normier <bernard@zeroc.com>2005-08-31 18:03:10 +0000
commit61522ec8348235db993a23ba9267c608dd64c965 (patch)
tree851b8fda0d17fc0fd34954f496a4fc049b6f8ba6 /java/src/IceGrid/TreeNode/EditableParent.java
parentminor edits (diff)
downloadice-61522ec8348235db993a23ba9267c608dd64c965.tar.bz2
ice-61522ec8348235db993a23ba9267c608dd64c965.tar.xz
ice-61522ec8348235db993a23ba9267c608dd64c965.zip
Fixed build
Diffstat (limited to 'java/src/IceGrid/TreeNode/EditableParent.java')
-rwxr-xr-xjava/src/IceGrid/TreeNode/EditableParent.java86
1 files changed, 86 insertions, 0 deletions
diff --git a/java/src/IceGrid/TreeNode/EditableParent.java b/java/src/IceGrid/TreeNode/EditableParent.java
new file mode 100755
index 00000000000..b0b379dbe9a
--- /dev/null
+++ b/java/src/IceGrid/TreeNode/EditableParent.java
@@ -0,0 +1,86 @@
+// **********************************************************************
+//
+// 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 IceGrid.Model;
+
+//
+// Corresponds to "root" editable descriptors such as Server,
+// Service, ServerTemplate, ServiceTemplate, Node etc.
+//
+class EditableParent extends Parent implements Editable
+{
+ EditableParent(boolean brandNew, String id, Model model, boolean root)
+ {
+ super(id, model, root);
+ _modified = brandNew;
+ }
+
+ EditableParent(boolean brandNew, String id, Model model)
+ {
+ this(brandNew, id, model, false);
+ }
+
+ EditableParent(EditableParent o, boolean copyChildren)
+ {
+ super(o, copyChildren);
+ _modified = o._modified;
+ _removedElements = (java.util.TreeSet)o._removedElements.clone();
+ }
+
+
+ EditableParent(EditableParent o)
+ {
+ this(o, false);
+ }
+
+ public boolean isModified()
+ {
+ return _modified;
+ }
+
+ public void markModified()
+ {
+ _modified = true;
+ }
+
+ void removeElement(CommonBase child)
+ {
+ _removedElements.add(child.getId());
+ removeChild(child);
+ }
+
+ void purgeChildren(java.util.Set keepSet)
+ {
+ java.util.Iterator p = _children.iterator();
+ while(p.hasNext())
+ {
+ CommonBase child = (CommonBase)p.next();
+ if(!keepSet.contains(child.getId()))
+ {
+ removeElement(child);
+ }
+ }
+ }
+
+ java.util.Set removedElements()
+ {
+ return _removedElements;
+ }
+
+ public Editable getEditable()
+ {
+ return this;
+ }
+
+ private boolean _modified;
+ private java.util.TreeSet _removedElements = new java.util.TreeSet();
+}
+
+