@Override public <K, N> CounterQuery<K, N> createCounterColumnQuery(Serializer<K> keySerializer, Serializer<N> nameSerializer) { return HFactory.createCounterColumnQuery(keyspace, keySerializer, nameSerializer); }
@Override public <K, N> CounterQuery<K, N> createCounterColumnQuery(Serializer<K> keySerializer, Serializer<N> nameSerializer) { return HFactory.createCounterColumnQuery(keyspace, keySerializer, nameSerializer); }
private Long readCounterValue(String key, String cf, String colName) { CounterQuery<String, String> q = createCounterColumnQuery(ko, se, se); q.setColumnFamily(cf).setName(colName).setKey(key); HCounterColumn<String> c = q.execute().get(); if (c == null) return null; return c.getValue(); }
@Test public void testIncrementDecrementCounter() { createMutator(ko, se).incrementCounter("testIncrementDecrementCounter", COUNTER_CF, "testIncrementDecrementCounter_name", 7); createMutator(ko, se).decrementCounter("testIncrementDecrementCounter", COUNTER_CF, "testIncrementDecrementCounter_name", 2); // The total in the counter is 5. (7 - 2) // get value CounterQuery<String, String> q = createCounterColumnQuery(ko, se, se); q.setColumnFamily(COUNTER_CF).setName("testIncrementDecrementCounter_name"); QueryResult<HCounterColumn<String>> r = q.setKey("testIncrementDecrementCounter") .execute(); assertNotNull(r); HCounterColumn<String> c = r.get(); assertNotNull(c); Long value = c.getValue(); assertEquals(5, value.longValue()); }
CounterQuery<String, String> q = createCounterColumnQuery(ko, se, se); q.setColumnFamily(COUNTER_CF). setName("testInsertGetRemoveCounter_name"). CounterQuery<String, String> q2 = createCounterColumnQuery(ko, se, se); q2.setName("testInsertGetRemoveCounter_name").setColumnFamily(COUNTER_CF); QueryResult<HCounterColumn<String>> r2 = q2.setKey("testInsertGetRemoveCounter")
@Override public <K, N> long getCounter(String keyspace, String columnFamily, K rowKey, N columnName, CmbSerializer keySerializer, CmbSerializer columnNameSerializer) throws PersistenceException { long ts1 = System.currentTimeMillis(); logger.debug("event=get_counter cf=" + columnFamily + " key=" + rowKey + " column=" + columnName); try { CounterQuery<K, N> countQuery = HFactory.createCounterColumnQuery(getKeyspace(keyspace), getSerializer(keySerializer), getSerializer(columnNameSerializer)); countQuery.setColumnFamily(columnFamily).setKey(rowKey).setName(columnName); QueryResult<HCounterColumn<N>> result = countQuery.execute(); CMBControllerServlet.valueAccumulator.addToCounter(AccumulatorName.CassandraRead, 1L); if (result.get() == null) { return 0; } return result.get().getValue(); } finally { long ts2 = System.currentTimeMillis(); CMBControllerServlet.valueAccumulator.addToCounter(AccumulatorName.CassandraTime, (ts2 - ts1)); } } }
private static void checkCounterColumn(Keyspace keyspace, RowModel expectedRowModel, String expectedColumnFamilyName, ColumnModel expectedColumnModel) throws Error { CounterQuery<byte[], byte[]> counterColumnQuery = HFactory.createCounterColumnQuery(keyspace, BytesArraySerializer.get(), BytesArraySerializer.get()); counterColumnQuery.setColumnFamily(expectedColumnFamilyName) .setKey(getBytes(expectedRowModel.getKey())).setName(getBytes(expectedColumnModel.getName())); QueryResult<HCounterColumn<byte[]>> result = counterColumnQuery.execute(); HCounterColumn<byte[]> hColumn = result.get(); checkCounterColumnName(expectedColumnModel, hColumn); checkCounterColumnValue(expectedRowModel, hColumn); }
private static void checkCounterColumn(Keyspace keyspace, RowModel expectedRowModel, String expectedColumnFamilyName, ColumnModel expectedColumnModel) throws Error { CounterQuery<byte[], byte[]> counterColumnQuery = HFactory.createCounterColumnQuery(keyspace, BytesArraySerializer.get(), BytesArraySerializer.get()); counterColumnQuery.setColumnFamily(expectedColumnFamilyName) .setKey(getBytes(expectedRowModel.getKey())).setName(getBytes(expectedColumnModel.getName())); QueryResult<HCounterColumn<byte[]>> result = counterColumnQuery.execute(); HCounterColumn<byte[]> hColumn = result.get(); checkCounterColumnName(expectedColumnModel, hColumn); checkCounterColumnValue(expectedRowModel, hColumn); }