package net.sourceforge.phpdt.sql.view.bookmark; import java.util.Collections; import java.util.Vector; import net.sourceforge.phpdt.sql.bookmarks.Bookmark; public class BookmarkNode extends Bookmark implements TreeNode { private Vector children = new Vector(); public BookmarkNode() { } public BookmarkNode(Bookmark bookmark) { super(bookmark); } public Object[] getChildren() { return children.toArray(); } public Object getParent() { return Root.ROOT; } public boolean hasChildren() { if (children != null && children.size() > 0) { return true; } return false; } public void setChildren(Vector children) { for (int i = 0; i < children.size(); i++) { Object obj = children.elementAt(i); isValid(obj); } Collections.sort(children); this.children = children; } public void isValid(Object child) { boolean valid = false; if (child instanceof TableNode || child instanceof ViewNode || child instanceof SequenceNode) { valid = true; } if (!valid) { throw new RuntimeException("Invalid BookmarkNode child: " + child.getClass().getName()); } } }