view src/treecms/cassandra/CassandraSingleNode.java @ 19:019ca5abb1f0

commit
author shoshi
date Tue, 31 May 2011 15:55:28 +0900
parents 168deb591f21
children
line wrap: on
line source

package treecms.cassandra;

import java.nio.ByteBuffer;
import java.util.List;
import java.util.Map;
import java.util.Set;
import treecms.api.Forest;
import treecms.api.NodeAttributes;
import treecms.api.NodeChildren;
import treecms.api.NodeID;
import treecms.api.SingleNode;
import treecms.tree.util.NodeAttributesImpl;
import treecms.tree.util.NodeChildrenImpl;

public class CassandraSingleNode implements SingleNode
{
	private final CassandraForest m_forest;
	private final NodeID m_id;
	
	private final NodeChildren<SingleNode> m_children;
	private final NodeAttributes m_attrs;
	
	public CassandraSingleNode(CassandraForest _forest,NodeID _id)
	{
		m_forest = _forest;
		m_id = _id;
		
		m_children = new NodeChildrenImpl<SingleNode>();
		m_attrs = new NodeAttributesImpl();
	}

	@Override
	public NodeID getID()
	{
		return m_id;
	}

	@Override
	public Forest getForest()
	{
		return m_forest;
	}
	
	@Override
	public List<SingleNode> getList()
	{
		return m_children.getList();
	}

	@Override
	public Set<String> getUUIDSet()
	{
		return m_children.getUUIDSet();
	}

	@Override
	public boolean add(SingleNode _child)
	{
		return m_children.add(_child);
	}

	@Override
	public boolean addAll(NodeChildren<SingleNode> _children)
	{
		return m_children.addAll(_children);
	}

	@Override
	public SingleNode get(String _uuid)
	{
		return m_children.get(_uuid);
	}

	@Override
	public SingleNode get(int _index)
	{
		return m_children.get(_index);
	}

	@Override
	public SingleNode remove(String _uuid)
	{
		return m_children.remove(_uuid);
	}

	@Override
	public SingleNode remove(int _index)
	{
		return m_children.remove(_index);
	}

	@Override
	public SingleNode replace(SingleNode _newChild)
	{
		return m_children.replace(_newChild);
	}

	@Override
	public boolean contains(String _id)
	{
		return m_children.contains(_id);
	}

	@Override
	public boolean swap(String _uuid1, String _uuid2)
	{
		return m_children.swap(_uuid1, _uuid2);
	}

	@Override
	public void clearChildren()
	{
		m_children.clearChildren();
	}

	@Override
	public Map<ByteBuffer, ByteBuffer> asMap()
	{
		return m_attrs.asMap();
	}

	@Override
	public Set<ByteBuffer> getKeySet()
	{
		return m_attrs.getKeySet();
	}

	@Override
	public void put(ByteBuffer _name, ByteBuffer _value)
	{
		m_attrs.put(_name,_value);
	}

	@Override
	public void putAll(NodeAttributes _attrs) 
	{
		m_attrs.putAll(_attrs);
	}

	@Override
	public ByteBuffer get(ByteBuffer _name)
	{
		return m_attrs.get(_name);
	}

	@Override
	public NodeAttributes getAll()
	{
		return m_attrs.getAll();
	}

	@Override
	public void remove(ByteBuffer _name)
	{
		m_attrs.remove(_name);
	}

	@Override
	public void removeAll(Set<ByteBuffer> _keySet)
	{
		m_attrs.removeAll(_keySet);
	}

	@Override
	public void clearAttributes()
	{
		m_attrs.clearAttributes();
	}
}