Mercurial > hg > Members > shoshi > TreeCMS > TreeCMSPrototype1
view src/treecms/proto/cassandra/CassDecNodeID.java @ 50:a72718a0bccf
added demo tree builder
author | shoshi |
---|---|
date | Tue, 01 Feb 2011 16:28:49 +0900 |
parents | 347feeca4728 |
children |
line wrap: on
line source
package treecms.proto.cassandra; import java.util.UUID; import treecms.proto.api.NodeID; import treecms.proto.id.DecrementalNodeID; public class CassDecNodeID extends DecrementalNodeID { private String m_uuid; private long m_version; private CassBrowser m_cassandra; public CassDecNodeID(CassBrowser _browser) { m_uuid = UUID.randomUUID().toString(); m_version = START_VALUE; m_cassandra = _browser; } public CassDecNodeID(CassBrowser _browser,String _uuid,long _version) { m_cassandra = _browser; m_uuid = _uuid; m_version = _version; } @Override public NodeID create() { return new CassDecNodeID(m_cassandra); } @Override public NodeID getTip() { NodeID tip = m_cassandra.getTipIDFromUUID(m_uuid); if(tip == null){ return this; } return tip; } @Override public String getUUID() { return m_uuid; } @Override public String getVersion() { return Long.toString(m_version); } @Override public NodeID update() { return new CassDecNodeID(m_cassandra,m_uuid,m_version - 1); } }