-
Notifications
You must be signed in to change notification settings - Fork 14
Counters
edwardcapriolo edited this page Feb 22, 2013
·
1 revision
Counters can be fetched with the standard get operation, and incremented with the Counter operation.
@Test
@RequiresColumnFamily(ksName = "myks", cfName = "mycountercf", isCounter = true)
public void counterNoodling() throws Exception {
IntraReq req = new IntraReq();
req.add(
Operations.assumeOp("myks", "mycountercf", "value", "LongType"))
.add(Operations.assumeOp("myks", "mycountercf", "column", "UTF8Type"))
.add(Operations.setKeyspaceOp("myks"))
.add(Operations.setColumnFamilyOp("mycountercf"))
.add(Operations.counter("counter_key", "counter_name_1", 1).set("timeout", 30000)) // 4
.add(Operations.getOp("counter_key", "counter_name_1"))
.add(Operations.counter("counter_key", "counter_name_1", 4).set("timeout", 30000))
.add(Operations.getOp("counter_key", "counter_name_1"));
...
List<Map> results = (List<Map>) res.getOpsRes().get(5);
logger.info("has results {}",results);
Assert.assertEquals(1L, results.get(0).get("value"));
results = (List<Map>) res.getOpsRes().get(7);
Assert.assertEquals(5L, results.get(0).get("value"));