diff src/main/java/jungle/app/bbs/HectorSample.java @ 105:f9e29a52efd3

Move some files
author one
date Tue, 26 Nov 2013 06:43:10 +0900
parents src/jungle/app/bbs/HectorSample.java@29127ac788a6
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/main/java/jungle/app/bbs/HectorSample.java	Tue Nov 26 06:43:10 2013 +0900
@@ -0,0 +1,70 @@
+package jungle.app.bbs;
+
+import java.util.List;
+import java.util.UUID;
+import me.prettyprint.cassandra.serializers.StringSerializer;
+import me.prettyprint.cassandra.serializers.UUIDSerializer;
+import me.prettyprint.cassandra.service.template.SuperCfUpdater;
+import me.prettyprint.cassandra.service.template.ThriftSuperCfTemplate;
+import me.prettyprint.cassandra.utils.TimeUUIDUtils;
+import me.prettyprint.hector.api.*;
+import me.prettyprint.hector.api.beans.HColumn;
+import me.prettyprint.hector.api.beans.HSuperColumn;
+import me.prettyprint.hector.api.beans.OrderedSuperRows;
+import me.prettyprint.hector.api.beans.SuperRow;
+import me.prettyprint.hector.api.beans.SuperSlice;
+import me.prettyprint.hector.api.factory.HFactory;
+import me.prettyprint.hector.api.query.QueryResult;
+import me.prettyprint.hector.api.query.RangeSuperSlicesQuery;
+import me.prettyprint.hector.api.query.SuperSliceQuery;
+
+public class HectorSample
+{
+	public static void main(String _args[])
+	{
+		Cluster myCluster = HFactory.getOrCreateCluster("test-cluster","localhost:9160");
+		
+		Keyspace ksp = HFactory.createKeyspace("cassaBBS",myCluster);
+		/*
+		ColumnFamilyDefinition newCF = HFactory.createColumnFamilyDefinition("DEMO","ccc",ComparatorType.UUIDTYPE);
+		newCF.setColumnType(ColumnType.SUPER);
+		myCluster.addColumnFamily(newCF);
+		*/
+		
+		ThriftSuperCfTemplate<String,UUID,String> template = 
+				new ThriftSuperCfTemplate<String,UUID,String>(ksp,"boards",StringSerializer.get(),
+						UUIDSerializer.get(),StringSerializer.get());
+		UUID time = TimeUUIDUtils.getUniqueTimeUUIDinMillis();
+		SuperCfUpdater<String,UUID,String> updater = template.createUpdater("board1",TimeUUIDUtils.getTimeUUID(0));
+		updater.setString("name","peter");
+		updater.setString("message",time.toString());
+		
+		template.update(updater);
+		
+		UUID start = TimeUUIDUtils.getTimeUUID(0);
+		
+		SuperSliceQuery<String, UUID, String, String> sq = HFactory.createSuperSliceQuery(ksp, StringSerializer.get(), UUIDSerializer.get(), StringSerializer.get(), StringSerializer.get());
+		sq.setKey("board1").setColumnFamily("ccc").setRange(start,null,false,100);
+		
+		QueryResult<SuperSlice<UUID,String,String>> results = sq.execute();
+		
+		SuperSlice<UUID,String,String> ss = results.get();
+		List<HSuperColumn<UUID,String,String>> list = ss.getSuperColumns();
+		for(HSuperColumn<UUID,String,String> sc : list){
+			HColumn<String,String> sub = sc.getSubColumnByName("name");
+			System.out.println(sub.getValue());
+			sub = sc.getSubColumnByName("message");
+			System.out.println(sub.getValue());
+		}
+		
+		RangeSuperSlicesQuery<String,UUID,String,String> rsq = HFactory.createRangeSuperSlicesQuery(ksp,StringSerializer.get(),
+				UUIDSerializer.get(),StringSerializer.get(),StringSerializer.get());
+		rsq.setKeys(null,null).setRange(null,null,false,0).setColumnFamily("ccc");
+		
+		QueryResult<OrderedSuperRows<String,UUID,String,String>> rsqResult = rsq.execute();
+		OrderedSuperRows<String, UUID, String, String> rows = rsqResult.get();
+		for(SuperRow<String, UUID, String, String>  row : rows.getList()){
+			System.out.println(row.getKey());
+		}
+	}
+}