@Override public void setNewValue(ITupleReference newValue) { this.newValue = newValue; this.newValueFieldCount = newValue.getFieldCount(); }
@Override public void setOldValue(ITupleReference oldValue) { this.oldValue = oldValue; this.oldValueFieldCount = oldValue.getFieldCount(); }
public void addTuple(ITupleReference tuple) { tuples[numTuples] = tuple; totalFieldCount += tuple.getFieldCount(); if (numTuples > 0) { fieldCounts[numTuples] = fieldCounts[numTuples - 1] + tuple.getFieldCount(); } else { fieldCounts[numTuples] = tuple.getFieldCount(); } ++numTuples; }
@Override public int getFieldCount() { return tuple.getFieldCount(); }
public void removeLastTuple() { if (numTuples > 0) { ITupleReference lastTuple = tuples[--numTuples]; totalFieldCount -= lastTuple.getFieldCount(); } }
@Override public int getFieldCount() { return tuple.getFieldCount(); }
public static MultiComparator getSearchMultiComparator(IBinaryComparatorFactory[] cmpFactories, ITupleReference searchKey) { if (searchKey == null || cmpFactories.length == searchKey.getFieldCount()) { return MultiComparator.create(cmpFactories); } IBinaryComparator[] newCmps = new IBinaryComparator[searchKey.getFieldCount()]; for (int i = 0; i < searchKey.getFieldCount(); i++) { newCmps[i] = cmpFactories[i].createBinaryComparator(); } return new MultiComparator(newCmps); }
@Override protected int getNullFlagsBytes(ITupleReference tuple) { // +1.0 is for matter/antimatter bit. return BitOperationUtils.getFlagBytes(tuple.getFieldCount() + 1); }
@Override protected int getNullFlagsBytes(ITupleReference tuple) { // # of fields + matter/antimatter bit + updated bit (optional). int numBits = tuple.getFieldCount() + 1; if (updateAware) { numBits++; } return BitOperationUtils.getFlagBytes(numBits); }
public static MultiComparator getSearchMultiComparator(IBinaryComparatorFactory[] cmpFactories, ITupleReference searchKey) { if (searchKey == null || cmpFactories.length == searchKey.getFieldCount()) { return MultiComparator.create(cmpFactories); } IBinaryComparator[] newCmps = new IBinaryComparator[searchKey.getFieldCount()]; for (int i = 0; i < searchKey.getFieldCount(); i++) { newCmps[i] = cmpFactories[i].createBinaryComparator(); } return new MultiComparator(newCmps); }
private int getLeftChildPageOff(ITupleReference tuple) { return tuple.getFieldStart(tuple.getFieldCount() - 1) + tuple.getFieldLength(tuple.getFieldCount() - 1); }
public static Object[] deserializeTuple(ITupleReference tuple, ISerializerDeserializer[] fields) throws HyracksDataException { int numFields = Math.min(tuple.getFieldCount(), fields.length); Object[] objs = new Object[numFields]; for (int i = 0; i < numFields; i++) { ByteArrayInputStream inStream = new ByteArrayInputStream(tuple.getFieldData(i), tuple.getFieldStart(i), tuple.getFieldLength(i)); DataInput dataIn = new DataInputStream(inStream); objs[i] = fields[i].deserialize(dataIn); } return objs; }
@Override public int bytesRequired(ITupleReference tuple) { int bytes = getNullFlagsBytes(tuple) + getFieldSlotsBytes(tuple); for (int i = 0; i < tuple.getFieldCount(); i++) { bytes += tuple.getFieldLength(i); } return bytes; }
@Override public int bytesRequired(ITupleReference tuple) { int bytes = getNullFlagsBytes(tuple) + getFieldSlotsBytes(tuple); for (int i = 0; i < tuple.getFieldCount(); i++) { bytes += tuple.getFieldLength(i); } return bytes; }
protected int getFieldSlotsBytes(ITupleReference tuple) { int fieldSlotBytes = 0; for (int i = 0; i < tuple.getFieldCount(); i++) { if (!typeTraits[i].isFixedLength()) { fieldSlotBytes += VarLenIntEncoderDecoder.getBytesRequired(tuple.getFieldLength(i)); } } return fieldSlotBytes; }
private void writeTupleToOutput(ITupleReference tuple) throws IOException { try { for (int i = 0; i < tuple.getFieldCount(); i++) { dos.write(tuple.getFieldData(i), tuple.getFieldStart(i), tuple.getFieldLength(i)); tb.addFieldEndOffset(); } } catch (Exception e) { throw e; } }
public static ITupleReference copyTuple(ITupleReference tuple) throws HyracksDataException { ArrayTupleBuilder tupleBuilder = new ArrayTupleBuilder(tuple.getFieldCount()); for (int i = 0; i < tuple.getFieldCount(); i++) { tupleBuilder.addField(tuple.getFieldData(i), tuple.getFieldStart(i), tuple.getFieldLength(i)); } ArrayTupleReference tupleCopy = new ArrayTupleReference(); tupleCopy.reset(tupleBuilder.getFieldEndOffsets(), tupleBuilder.getByteArray()); return tupleCopy; }
protected void saveLastTuple(ITupleReference tuple) throws HyracksDataException { lastTupleBuilder.reset(); for (int i = 0; i < tuple.getFieldCount(); i++) { lastTupleBuilder.addField(tuple.getFieldData(i), tuple.getFieldStart(i), tuple.getFieldLength(i)); } lastTuple.reset(lastTupleBuilder.getFieldEndOffsets(), lastTupleBuilder.getByteArray()); }
private void buildTuple(ArrayTupleBuilder builder, ITupleReference diskTuple, int cursorIndex, IValueReference tupleFlag) throws HyracksDataException { builder.reset(); cursorIndexPointable.setInteger(cursorIndex); builder.addField(cursorIndexPointable); builder.addField(tupleFlag); for (int i = 0; i < diskTuple.getFieldCount(); i++) { builder.addField(diskTuple.getFieldData(i), diskTuple.getFieldStart(i), diskTuple.getFieldLength(i)); } }
public void reset(ITupleReference tuple) throws HyracksDataException { numElements = -1; // Copy the tokens tuple for later use in btree probes. TupleUtils.copyTuple(tokenTupleBuilder, tuple, tuple.getFieldCount()); tokenTuple.reset(tokenTupleBuilder.getFieldEndOffsets(), tokenTupleBuilder.getByteArray()); btreeSearchTuple.reset(); btreeSearchTuple.addTuple(tokenTuple); btreeCursor.close(); countingCursor.close(); }