public static ByteBuffer toByteBuffer(Object... o) { DynamicComposite composite = new DynamicComposite(o); return composite.serialize(); }
DynamicComposite s = new DynamicComposite( slice.getStart().getCode(), slice.getStart().getValue() ); if ( !slice.getStart().isInclusive() ) { setEqualityFlag( s, ComponentEquality.GREATER_THAN_EQUAL ); start = s.serialize(); DynamicComposite f = new DynamicComposite( slice.getFinish().getCode(), slice.getFinish().getValue() ); if ( slice.getFinish().isInclusive() ) { setEqualityFlag( f, ComponentEquality.GREATER_THAN_EQUAL ); finish = f.serialize(); DynamicComposite c = DynamicComposite.fromByteBuffer( column.getName() ); queues.addQueue( c.get( 3, se ), c.get( 2, ue ) );
public static DynamicComposite fromByteBuffer(ByteBuffer byteBuffer) { DynamicComposite composite = new DynamicComposite(); composite.deserialize(byteBuffer); return composite; }
@SuppressWarnings("unchecked") public static DynamicComposite setEqualityFlag( DynamicComposite composite, ComponentEquality eq ) { if ( composite.isEmpty() ) { return composite; } int i = composite.size() - 1; @SuppressWarnings("rawtypes") Component c = composite.getComponent( i ); composite.setComponent( i, c.getValue(), c.getSerializer(), c.getComparator(), eq ); return composite; }
start_bytes = ( ( DynamicComposite ) start ).serialize(); start_bytes = DynamicComposite.toByteBuffer( ( List<?> ) start ); finish_bytes = ( ( DynamicComposite ) finish ).serialize(); finish_bytes = DynamicComposite.toByteBuffer( ( List<?> ) finish );
.setRange( DynamicComposite.toByteBuffer( entryName ), setGreaterThanEqualityFlag( new DynamicComposite( entryName ) ).serialize(), false, INDEX_ENTRY_LIST_COUNT ).execute().get().getColumns(); DynamicComposite composite = DynamicComposite.fromByteBuffer( entry.getName().duplicate() ); prev_value = composite.get( 2 ); prev_timestamp = ( UUID ) composite.get( 3 ); if ( composite.size() > 4 ) { prev_obj_path = ( String ) composite.get( 4 ); .toByteBuffer( entryName, indexValueCode( entryValue ), toIndexableValue( entryValue ), indexUpdate.getTimestampUuid(), name ), ByteBuffer.allocate( 0 ), timestamp, be, be ) );
DynamicComposite c = new DynamicComposite(); c.add("String1"); ByteBuffer b = c.serialize(); assertEquals(b.remaining(), 12); c.add("String2"); b = c.serialize(); assertEquals(b.remaining(), 24); c = new DynamicComposite(); c.deserialize(b); assertEquals(2, c.size()); Object o = c.get(0); assertEquals("String1", o); o = c.get(1); assertEquals("String2", o); c = new DynamicComposite(); c.add(new Long(10)); b = c.serialize(); c = new DynamicComposite(); c.deserialize(b); o = c.get(0); assertTrue(o instanceof Long); c = new DynamicComposite(); c.add(new Float(10)); b = c.serialize(); c = new DynamicComposite();
DynamicComposite composite = new DynamicComposite(); composite.addComponent("jeans", StringSerializer.get(), StringSerializer .get().getComparatorType().getTypeName()); composite.addComponent(1293840000000l, LongSerializer.get(), "BytesType(reversed=true)"); System.out.println(ByteBufferUtil.bytesToHex(composite.serialize())); composite = new DynamicComposite(); composite.addComponent("jeans", StringSerializer.get(), StringSerializer .get().getComparatorType().getTypeName()); composite.addComponent(1294099200000l, LongSerializer.get(), "BytesType(reversed=true)"); System.out.println(ByteBufferUtil.bytesToHex(composite.serialize())); DynamicComposite start = new DynamicComposite(); start.addComponent("jeans", StringSerializer.get(), StringSerializer.get() .getComparatorType().getTypeName(), ComponentEquality.EQUAL); DynamicComposite end = new DynamicComposite(); end.addComponent("jeans", StringSerializer.get(), StringSerializer.get() .getComparatorType().getTypeName(), ComponentEquality.GREATER_THAN_EQUAL);
@Test public void testNullValueSerialization() throws Exception { // test correct serialization with null values and user specified // serialization DynamicComposite c = new DynamicComposite(); try { c.addComponent(null, StringSerializer.get()); fail("Null values not allowed"); } catch (NullPointerException e) { } }
@Test public void testUUIDGetSlice() { // Gets all columns based on the first component in the column name Map<UUID, Set<UUID>> ids = init(); for(Entry<UUID, Set<UUID>> entry : ids.entrySet()) { UUID component0 = entry.getKey(); // start at first column who's single component == component0 DynamicComposite start = new DynamicComposite(); start.addComponent(component0, us); // up to and including any column whose first component == component0 regardless of remaining component values DynamicComposite end = new DynamicComposite(); end.addComponent(component0, us, us.getComparatorType().getTypeName(), ComponentEquality.GREATER_THAN_EQUAL); ColumnSliceIterator<String, DynamicComposite, String> iterator = getIterator(rowKey, start, end); while(iterator.hasNext()) { HColumn<DynamicComposite, String> column = iterator.next(); DynamicComposite composite = column.getName(); assertEquals(component0, composite.get(0, us)); assertTrue(ids.get(component0).contains(composite.get(1, us))); } } }
DynamicComposite end = new DynamicComposite(); List<Component<?>> startComponents = start.getComponents(); current = start.getComponent(i); end.setComponent(i, current.getValue(), current.getSerializer(), current.getComparator(), ComponentEquality.EQUAL); current = start.getComponent(i); end.setComponent(i, current.getValue(), current.getSerializer(), current.getComparator(), ComponentEquality.GREATER_THAN_EQUAL);
@Test public void testUUIDGetAll() { // Gets all columns in the row regardless of the column name init(); // Get all rows Set<UUID> results = new HashSet<UUID>(); ColumnSliceIterator<String, DynamicComposite, String> iterator = getIterator(rowKey, null, null); while(iterator.hasNext()) { HColumn<DynamicComposite, String> column = iterator.next(); DynamicComposite composite = column.getName(); UUID component1 = composite.get(1, us); results.add(component1); } assertEquals("Failed to retrieve all columns", 8, results.size()); }
DynamicComposite composite = (DynamicComposite) new DynamicComposite(). addComponent("a", ss). addComponent("ba", ss). addComponent("ca", ss). addComponent("da", ss); mutator.addInsertion(rowKey, columnFamily, HFactory.createColumn(composite, composite.toString(), ds, ss)); composite = (DynamicComposite) new DynamicComposite(). addComponent("a", ss). addComponent("bb", ss). addComponent("cb", ss). addComponent("db", ss); mutator.addInsertion(rowKey, columnFamily, HFactory.createColumn(composite, composite.toString(), ds, ss)); composite = (DynamicComposite) new DynamicComposite(). addComponent("b", ss). addComponent("ba", ss). addComponent("ca", ss). addComponent("da", ss); mutator.addInsertion(rowKey, columnFamily, HFactory.createColumn(composite, composite.toString(), ds, ss)); composite = (DynamicComposite) new DynamicComposite(). addComponent("b", ss). addComponent("bb", ss). addComponent("cb", ss). addComponent("db", ss); mutator.addInsertion(rowKey, columnFamily, HFactory.createColumn(composite, composite.toString(), ds, ss)); DynamicComposite end = (DynamicComposite) new DynamicComposite().
/** * Increase the last comparator to GT_E to ensure we get the next page * * @param composite * @return */ @SuppressWarnings({ "rawtypes", "unchecked" }) private DynamicComposite bumpComposite(DynamicComposite composite) { DynamicComposite newComposite = new DynamicComposite(); int size = composite.getComponents().size(); Component component = null; for (int i = 0; i < size - 1; i++) { component = composite.getComponent(i); newComposite.addComponent(component.getValue(), component.getSerializer(), component.getComparator(), component.getEquality()); } component = composite.getComponent(size - 1); newComposite.addComponent(component.getValue(), component.getSerializer(), component.getComparator(), ComponentEquality.GREATER_THAN_EQUAL); return newComposite; }
@Test public void testEquality() throws Exception { DynamicCompositeType instance = getDefaultDynamicComparator(); DynamicComposite c1 = new DynamicComposite(10, "foo"); DynamicComposite c2 = new DynamicComposite(10, "foo"); assertEquals(0, instance.compare(c1.serialize(), c2.serialize())); c2.setEquality(ComponentEquality.GREATER_THAN_EQUAL); assertEquals(-1, instance.compare(c1.serialize(), c2.serialize())); c2.setEquality(ComponentEquality.LESS_THAN_EQUAL); assertEquals(1, instance.compare(c1.serialize(), c2.serialize())); c2.setEquality(ComponentEquality.EQUAL); assertEquals(0, instance.compare(c1.serialize(), c2.serialize())); c1.setEquality(ComponentEquality.LESS_THAN_EQUAL); assertEquals(-1, instance.compare(c1.serialize(), c2.serialize())); c1.setEquality(ComponentEquality.GREATER_THAN_EQUAL); assertEquals(1, instance.compare(c1.serialize(), c2.serialize())); }
DynamicComposite dc = new DynamicComposite(); dc.add(0, "Austin"); dc.add(1, 7516L); dc.add(2, 225L); column.setName(dc); column.setValue("TIME WARNER COMMUNICATIONS AXS OF AUSTIN, TX"); dc = new DynamicComposite(); dc.add(0, "225"); dc = new DynamicComposite(); dc.add(0, "Austin"); dc.add(1, 7516L); dc.add(2, 334L); column.setName(dc); column.setValue("TIME WARNER COMMUNICATIONS AXS OF AUSTIN, TX"); dc = new DynamicComposite(); dc.add(0, "334"); dc.add(1, 7516L); column.setName(dc); column.setValue("TIME WARNER COMMUNICATIONS AXS OF AUSTIN, TX"); dc = new DynamicComposite(); dc.add(0, "Austin"); dc.add(1, 7516L); dc.add(2, 439L); column.setName(dc); column.setValue("TIME WARNER COMMUNICATIONS AXS OF AUSTIN, TX");
@Override public void addToComponent(DynamicComposite composite, int index, Object value, ComponentEquality equality) { composite.addComponent(index, value, serializer, compositeComparator, equality); }
@Override public ByteBuffer toByteBuffer(DynamicComposite obj) { return obj.serialize(); }
tombstoneComposite.setComponent(0, key, buffSerializer, compositeComparator, ComponentEquality.EQUAL); auditComposite.setComponent(0, key, buffSerializer, compositeComparator, ComponentEquality.EQUAL); searchComposite.addComponent(key, buffSerializer, compositeComparator); logger.debug("Writing search index with row key: {} and column: {}", this.searchIndexNameString, ByteBufferUtil.bytesToHex(searchComposite.serialize())); logger.debug("Writing tombstone index with row key: {} and column: {}", this.reverseIndexNameString, ByteBufferUtil.bytesToHex(tombstoneComposite.serialize()));
for ( int i = 0; i < elementNames.length; i++ ) { columnNames[i] = entityHasDictionary ? bytebuffer( elementNames[i] ) : DynamicComposite.toByteBuffer( elementNames[i] ); for ( HColumn<ByteBuffer, ByteBuffer> result : results.getColumns() ) { String name = entityHasDictionary ? string( result.getName() ) : DynamicComposite.fromByteBuffer( result.getName() ).get( 0, se ); if ( entityHasDictionary && coTypeIsBasic ) { values.put( name, object( dictionaryCoType, result.getValue() ) );