Mercurial > hg > Members > shoshi > TreeCMSv1
diff 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 diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/treecms/proto/simple/SimpleLink.java Wed Nov 17 18:28:21 2010 +0900 @@ -0,0 +1,127 @@ +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; + } +}