itemIdColumnName.addComponent("item_id" , StringSerializer.get()); HColumn<Composite, UUID> hColumnObj_itemID = HFactory.createColumn(itemIdColumnName, userID, new CompositeSerializer(), UUIDSerializer.get()); mutator.addInsertion(userID, "my_items", hColumnObj_itemID); itemIdColumnName.addComponent(itemID , UUIDSerializer.get()); itemIdColumnName.addComponent("description" , StringSerializer.get()); HColumn<Composite, String> hColumnObj_description = HFactory.createColumn(descriptionColumnName, description , new CompositeSerializer(), StringSerializer.get()); mutator.addInsertion(userID, "my_items", hColumnObj_description);
/** * Build composite counter column * * @param labelId * @param subtype * @param count * @return */ private static HCounterColumn<Composite> countersToCompositeColumn( final Integer labelId, final char subtype, final Long count) { Composite composite = new Composite(); composite.addComponent(CN_TYPE_LABEL, strSe); composite.addComponent(labelId.toString(), strSe); composite.addComponent(Character.toString(subtype), strSe); return createCounterColumn(composite, count, new CompositeSerializer()); }
CompositeQueryIterator(String key, Composite start, Composite end) { this.key = key; this.start = start; this.end = end; SliceQuery<String,Composite,String> sliceQuery = HFactory.createSliceQuery(tutorialKeyspace, StringSerializer.get(), new CompositeSerializer(), StringSerializer.get()); sliceQuery.setColumnFamily("CountryStateCity"); sliceQuery.setKey(key); sliceIterator = new ColumnSliceIterator(sliceQuery, start, end, false); }
mutator.addDeletion(mailbox, CF_COUNTERS, c.getName(), new CompositeSerializer()); mutator.addDeletion(mailbox, CF_COUNTERS, c.getName(), new CompositeSerializer()); mutator.addDeletion(mailbox, CF_COUNTERS, c.getName(), new CompositeSerializer());
/** * Get counters for the specified label in the given mailbox * * @param mailbox * @param labelId * @return */ public static LabelCounters get(final String mailbox, final Integer labelId) { Composite startRange = new Composite(); startRange.addComponent(0, CN_TYPE_LABEL, Composite.ComponentEquality.EQUAL); startRange.addComponent(1, labelId.toString(), Composite.ComponentEquality.EQUAL); Composite endRange = new Composite(); endRange.addComponent(0, CN_TYPE_LABEL, Composite.ComponentEquality.EQUAL); endRange.addComponent(1, labelId.toString(), Composite.ComponentEquality.GREATER_THAN_EQUAL); SliceCounterQuery<String, Composite> sliceQuery = createCounterSliceQuery(CassandraDAOFactory.getKeyspace(), strSe, new CompositeSerializer()); sliceQuery.setColumnFamily(CF_COUNTERS); sliceQuery.setKey(mailbox); sliceQuery.setRange(startRange, endRange, false, 5); QueryResult<CounterSlice<Composite>> r = sliceQuery.execute(); Map<Integer, LabelCounters> counters = compositeColumnsToCounters(mailbox, r.get().getColumns()); LabelCounters labelCounters = counters.containsKey(labelId) ? counters.get(labelId) : new LabelCounters(); logger.debug("Fetched counters for single label {} with {}", labelId, labelCounters); return labelCounters; }
/** * Creates an HColumn with a column name composite of the form: * ['country_code']:['state]:['city name']) * and a value of ['timezone'] * @return */ HColumn<Composite,String> staticColumnFrom() { Composite composite = new Composite(); composite.addComponent(getCountryCode(), StringSerializer.get()); composite.addComponent(getAdmin1Code(), StringSerializer.get()); // extra un-escape to handle the case of "Washington, D.C." composite.addComponent(StringEscapeUtils.unescapeCsv(getAsciiName()), StringSerializer.get()); HColumn<Composite,String> col = HFactory.createColumn(composite, getTimezone(), new CompositeSerializer(), StringSerializer.get()); return col; }
/** * Get counters for all label in the given mailbox * * @param mailbox * @return */ public static Map<Integer, LabelCounters> getAll(final String mailbox) { Composite startRange = new Composite(); startRange.addComponent(0, CN_TYPE_LABEL, Composite.ComponentEquality.EQUAL); Composite endRange = new Composite(); endRange.addComponent(0, CN_TYPE_LABEL, Composite.ComponentEquality.GREATER_THAN_EQUAL); SliceCounterQuery<String, Composite> sliceQuery = createCounterSliceQuery(CassandraDAOFactory.getKeyspace(), strSe, new CompositeSerializer()); sliceQuery.setColumnFamily(CF_COUNTERS); sliceQuery.setKey(mailbox); sliceQuery.setRange(startRange, endRange, false, LabelConstants.MAX_LABEL_ID); QueryResult<CounterSlice<Composite>> r = sliceQuery.execute(); return compositeColumnsToCounters(mailbox, r.get().getColumns()); }