view src/treecms/proto/simple/SimpleTreeBuilder.java @ 25:99346c04a3cf

broken
author ShoshiTAMAKI
date Sun, 31 Oct 2010 18:34:02 +0900
parents f0c35d444982
children 9b91329e8a04
line wrap: on
line source

package treecms.proto.simple;

import treecms.proto.api.Node;
import treecms.proto.api.TreeBuilder;
import treecms.proto.id.NodeIDFactoryImpl;

public class SimpleTreeBuilder implements TreeBuilder
{
	private Node m_root;
	private NodeIDFactoryImpl m_idFactory;
	
	public SimpleTreeBuilder()
	{
		m_idFactory = new NodeIDFactoryImpl();
		m_root = createNode();
	}
	
	public Node getContents()
	{
		return m_root;
	}
	
	public Node createNode()
	{
		return new SimpleNode(m_idFactory.createNewID());
	}

	@Override
	public Node cloneNode(Node _node)
	{
		// TODO Auto-generated method stub
		if(!(_node instanceof SimpleNode)){
			throw new IllegalArgumentException();
		}
		return new SimpleNode(m_idFactory.updateExistID(_node.getID()));
	}
}