@Override public IAsterixListBuilder create(ATypeTag typeTag) { if (typeTag == ATypeTag.ARRAY) { return new OrderedListBuilder(); } else { return new UnorderedListBuilder(); } } }
private OrderedListBuilder getOrderedListBuilder() { if (orderedListBuilder != null) return orderedListBuilder; else { orderedListBuilder = new OrderedListBuilder(); return orderedListBuilder; } }
private UnorderedListBuilder getUnorderedListBuilder() { if (unorderedListBuilder != null) return unorderedListBuilder; else { unorderedListBuilder = new UnorderedListBuilder(); return unorderedListBuilder; } }
@Override public void next(DataOutput out) throws IOException { recBuilder.reset(recordType); recBuilder.init(); for (int i = 0; i < generators.length; i++) { fieldValueBuffer.reset(); generators[i].next(fieldValueBuffer.getDataOutput()); recBuilder.addField(i, fieldValueBuffer); } recBuilder.write(out, tagged); }
@Override public void serialize(DataOutput dataOutput, boolean writeTypeTag) throws HyracksDataException { IAsterixListBuilder listBuilder = new OrderedListBuilder(); listBuilder.reset(listType); ArrayBackedValueStorage fieldValue = new ArrayBackedValueStorage(); for (IJObject jObject : jObjects) { fieldValue.reset(); jObject.serialize(fieldValue.getDataOutput(), true); listBuilder.addItem(fieldValue); } listBuilder.write(dataOutput, writeTypeTag); }
@Override public void serialize(DataOutput dataOutput, boolean writeTypeTag) throws HyracksDataException { IAsterixListBuilder listBuilder = new UnorderedListBuilder(); listBuilder.reset(listType); ArrayBackedValueStorage fieldValue = new ArrayBackedValueStorage(); for (IJObject jObject : jObjects) { fieldValue.reset(); jObject.serialize(fieldValue.getDataOutput(), true); listBuilder.addItem(fieldValue); } listBuilder.write(dataOutput, writeTypeTag); }
@Override public void init() throws HyracksDataException { builder.reset(orderedlistType); }
@Override public IARecordBuilder create(ATypeTag type) { return new RecordBuilder(); } }
private void putNewField() throws HyracksDataException { outRecordBuilder.addField(newFieldNamePointable, newFieldValuePointable); } }
public IARecordBuilder getObjectBuilder(ARecordType recordType) { IARecordBuilder builder = objectBuilderPool.getInstance(); builder.reset(recordType); return builder; }
private void writeUntypedItems(IFrameTupleReference tuple) throws HyracksDataException { try { for (int i = 0; i < argEvals.length; i++) { argEvals[i].evaluate(tuple, inputVal); builder.addItem(inputVal); } } catch (IOException ioe) { throw HyracksDataException.create(ioe); } }
@SuppressWarnings("unchecked") public ParserContext() { objectBuilderPool = new ObjectPool<>(new RecordBuilderFactory()); arrayBuilderPool = new ObjectPool<>(new ListBuilderFactory(), ATypeTag.ARRAY); tempBufferPool = new ObjectPool<>(new AbvsBuilderFactory()); nullBitmapPool = new ObjectPool<>(); serializedFieldNames = new LRUMap<>(SERIALIZED_FIELDNAME_MAP_MAX_SIZE); stringSerDe = SerializerDeserializerProvider.INSTANCE.getAStringSerializerDeserializer(); aString = new AMutableString(""); }
@Override protected boolean processItem(IPointable item, int listIndex, IAsterixListBuilder listBuilder) throws HyracksDataException { listBuilder.addItem(item); // listBuilder always copies the item, so we're not using the supplied item return false; } }
@Override public void init() throws HyracksDataException { numSamplesTaken = 0; listOfSamplesBuilder.reset(ListOfSamplesTypeComputer.TYPE); }
@Override public void get(DataOutput out) throws IOException { recBuilder.reset(recordType); recBuilder.init(); for (int i = 0; i < generators.length; i++) { fieldValueBuffer.reset(); generators[i].get(fieldValueBuffer.getDataOutput()); recBuilder.addField(i, fieldValueBuffer); } recBuilder.write(out, tagged); }
public SimilarityJaccardPrefixCheckEvaluator(IScalarEvaluatorFactory[] args, IHyracksTaskContext context) throws HyracksDataException { super(args, context); listBuilder = new OrderedListBuilder(); inputVal = new ArrayBackedValueStorage(); }
private void addItem(IAsterixListBuilder listBuilder, IPointable item, List<IPointable> sameHashes) throws HyracksDataException { listBuilder.addItem(item); sameHashes.add(item); } }
public IAsterixListBuilder getCollectionBuilder(AbstractCollectionType collectionType) { IAsterixListBuilder builder = arrayBuilderPool.getInstance(); builder.reset(collectionType); return builder; }
private void incrementIfExists(List<ValueListIndex> sameHashes, IPointable item, int listIndex, IAsterixListBuilder listBuilder) throws HyracksDataException { ValueListIndex sameValue = ArrayFunctionsUtil.findItem(item, sameHashes, comp); if (sameValue != null && listIndex - sameValue.listIndex == 1) { // found the item, its stamp is OK (stamp saves the last list index that has seen this item) // increment stamp of this item sameValue.listIndex = listIndex; if (listIndex == listsArgs.length - 1) { // when listIndex is the last list, then it means this item was found in all previous lists listBuilder.addItem(item); } } } }
@Override protected void processList(ListAccessor listAccessor, IAsterixListBuilder listBuilder) throws IOException { // get the list items in reverse and append to the new list for (int i = listAccessor.size() - 1; i >= 0; i--) { listAccessor.getOrWriteItem(i, item, storage); listBuilder.addItem(item); } } }