Mercurial > hg > Members > shoshi > TreeCMSv1
view src/treecms/proto/cassandra/v1/CassDecNodeID.java @ 51:d4709911e0ed
moved old Cassandra Monotonic-Tree implementation from "cassandra" to "cassandra.v1"
author | shoshi |
---|---|
date | Fri, 11 Feb 2011 15:07:57 +0900 |
parents | src/treecms/proto/cassandra/CassDecNodeID.java@a72718a0bccf |
children |
line wrap: on
line source
package treecms.proto.cassandra.v1; 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); } }