Mercurial > hg > Members > shoshi > TreeCMSv1
view src/treecms/proto/simple/SimpleLink.java @ 31:ff4d4704e5d7
modified Node API
delete setLinkedNode,getLinkedNode
added Link API
setNode,getNode
added SimpleLink and deleted SimpleLinkedNode
Test code is SimpleLinkTest2
added document/figure/linkednode1.graffle
author | shoshi |
---|---|
date | Wed, 17 Nov 2010 18:28:21 +0900 |
parents | |
children | c0a0fa870e6e |
line wrap: on
line source
package treecms.proto.simple; import java.util.Collections; import java.util.Iterator; import java.util.LinkedList; import java.util.List; import treecms.proto.api.Link; import treecms.proto.api.Node; import treecms.proto.api.NodeID; import treecms.proto.id.IncrementalNodeID; public class SimpleLink implements Link { private NodeID m_id; private Node m_target; private LinkedList<Node> m_children; public SimpleLink(Node _target) { m_id = new IncrementalNodeID(); m_target = _target; m_children = new LinkedList<Node>(); } @Override public Node getNode() { return m_target; } @Override public void setNode(Node link) { m_target = link; } @Override public Node addChild(Node child) { return child; } @Override public Node cloneNode() { return new SimpleLink(m_target); } @Override public List<Node> getChildren() { return Collections.unmodifiableList(m_children); } @Override public String getClassName() { return m_target.getClassName(); } @Override public NodeID getID() { return m_id; } @Override public String getTitle() { return m_target.getTitle(); } @Override public boolean isChild(Node child) { return false; } @Override public Iterator<Node> iterator() { return Collections.unmodifiableList(m_children).iterator(); } @Override public boolean removeChild(Node child) { return false; } @Override public void setClassName(String _class) { m_target.setClassName(_class); } @Override public void setTitle(String _title) { m_target.setTitle(_title); } @Override public void addChildren(List<Node> child) { return; } @Override public void down(Node child) { return; } @Override public void replace(Node target, Node newChild) { return; } @Override public void up(Node child) { return; } }