view src/treecms/proto/simple/SimpleLink.java @ 36:9663c816e370

commit.
author suika6039
date Mon, 27 Dec 2010 21:08:43 +0900
parents c0a0fa870e6e
children 78e9b96ef04a
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;
	
	public SimpleLink(Node _target)
	{
		m_id = new IncrementalNodeID();
		m_target = _target;
		SimpleNodeTable.getInstance().put(m_id.toString(),this);
	}

	@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 null;
	}

	@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 m_node.isChild(_child);
	}

	@Override
	public Iterator<Node> iterator()
	{
		return Collections.EMPTY_LIST;
	}

	@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;
	}

	@Override
	public void clearChildren()
	{
		return;
	}
	
	@Override
	public Node createNode()
	{
		return new SimpleNode();
	}
}