diff src/treecms/tree/id/IncrementalIDProvider.java @ 27:aecc55e87143 default tip

test commit
author Shoshi TAMAKI <shoshi@cr.ie.u-ryukyu.ac.jp>
date Thu, 18 Aug 2011 17:37:03 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/treecms/tree/id/IncrementalIDProvider.java	Thu Aug 18 17:37:03 2011 +0900
@@ -0,0 +1,29 @@
+package treecms.tree.id;
+
+import java.util.concurrent.atomic.AtomicLong;
+import treecms.api.NodeID;
+
+public class IncrementalIDProvider implements NodeIDProvider
+{
+	private final String m_prefix;
+	private final AtomicLong m_count;
+	
+	public IncrementalIDProvider(String _prefix,long _count)
+	{
+		m_prefix = _prefix;
+		m_count = new AtomicLong(_count);
+	}
+	
+	@Override
+	public NodeID create()
+	{
+		String fid = String.format("%s-%s",m_prefix,m_count.getAndIncrement());
+		return new IncrementalID(fid);
+	}
+	
+	@Override
+	public String toString()
+	{
+		return String.format("prefix=%s,count=%d",m_prefix,m_count.get());
+	}
+}