@Override public int getLength() { return value.getLength(); } }
@Override public int getLength() { return value.getLength(); } }
private boolean sameGroup() throws HyracksDataException { for (int i = 0; i < args.length; i++) { IPointable v1 = argPrevValues[i]; IPointable v2 = argCurrValues[i]; IBinaryComparator cmp = argComparators[i]; if (cmp.compare(v1.getByteArray(), v1.getStartOffset(), v1.getLength(), v2.getByteArray(), v2.getStartOffset(), v2.getLength()) != 0) { return false; } } return true; } }
private int compareStrInByteArrayAndPointable(byte[] left, IPointable right, boolean rightTypeTagIncluded) throws HyracksDataException { int rightTypeTagLength = rightTypeTagIncluded ? 1 : 0; return strLowerCaseCmp.compare(left, 0, left.length, right.getByteArray(), right.getStartOffset() + rightTypeTagLength, right.getLength() - rightTypeTagLength); }
@Override public int compareTo(IPointable pointer) { return compareTo(pointer.getByteArray(), pointer.getStartOffset(), pointer.getLength()); }
@Override public int compareTo(IPointable pointer) { return compareTo(pointer.getByteArray(), pointer.getStartOffset(), pointer.getLength()); }
@Override public int compareTo(IPointable pointer) { return compareTo(pointer.getByteArray(), pointer.getStartOffset(), pointer.getLength()); }
private static void setValuePointer(IPointable src, IPointable value) { value.set(src.getByteArray(), src.getStartOffset() + 1, src.getLength() - 1); } }
private int compareStringWithArg(ATypeTag typeTag2, IPointable arg1, IPointable arg2) throws HyracksDataException { if (typeTag2 == ATypeTag.STRING) { return strBinaryComp.compare(arg1.getByteArray(), arg1.getStartOffset(), arg1.getLength() - 1, arg2.getByteArray(), arg2.getStartOffset(), arg2.getLength() - 1); } throw new IncompatibleTypeException(sourceLoc, COMPARISON, ATypeTag.SERIALIZED_STRING_TYPE_TAG, typeTag2.serialize()); }
@Override public boolean outputPartialResult(ArrayTupleBuilder tupleBuilder, IFrameTupleAccessor stateAccessor, int tIndex, AggregateState state) throws HyracksDataException { IAggregateEvaluator[] agg = (IAggregateEvaluator[]) state.state; for (int i = 0; i < agg.length; i++) { agg[i].finishPartial(p); tupleBuilder.addField(p.getByteArray(), p.getStartOffset(), p.getLength()); } return true; }
protected void processArgument(int argIdx, IPointable argPtr, UTF8StringPointable outStrPtr) throws HyracksDataException { byte[] bytes = argPtr.getByteArray(); int start = argPtr.getStartOffset(); // Type check. if (bytes[start] != ATypeTag.SERIALIZED_STRING_TYPE_TAG) { throw new TypeMismatchException(sourceLoc, funcID, argIdx, bytes[start], ATypeTag.SERIALIZED_STRING_TYPE_TAG); } int len = argPtr.getLength(); outStrPtr.set(bytes, start + 1, len); }
@Override public boolean outputFinalResult(ArrayTupleBuilder tupleBuilder, IFrameTupleAccessor stateAccessor, int tIndex, AggregateState state) throws HyracksDataException { IAggregateEvaluator[] agg = (IAggregateEvaluator[]) state.state; for (int i = 0; i < agg.length; i++) { agg[i].finish(p); tupleBuilder.addField(p.getByteArray(), p.getStartOffset(), p.getLength()); } return true; }
@Override public boolean accept(IFrameTupleReference tuple) throws HyracksDataException { eval.evaluate(tuple, p); return boolInspector.getBooleanValue(p.getByteArray(), p.getStartOffset(), p.getLength()); } }
private void addItem(final IPointable p) throws SystemException { try { dataArea.getDataOutput().write(p.getByteArray(), p.getStartOffset(), p.getLength()); slots.append(dataArea.getLength()); } catch (IOException e) { throw new SystemException(ErrorCode.SYSE0001, e); } } };
protected void produceTuple(ArrayTupleBuilder tb, IFrameTupleAccessor accessor, int tIndex, FrameTupleReference tupleRef) throws HyracksDataException { tb.reset(); for (int f = 0; f < projectionColumns.length; f++) { int k = projectionToOutColumns[f]; if (k >= 0) { runningAggEvals.get(k).step(tupleRef, p); tb.addField(p.getByteArray(), p.getStartOffset(), p.getLength()); } else { tb.addField(accessor, tIndex, projectionColumns[f]); } } }
private void computeAggregate() throws HyracksDataException { tupleBuilder.reset(); for (int f = 0; f < aggregs.length; f++) { aggregs[f].finish(result); tupleBuilder.addField(result.getByteArray(), result.getStartOffset(), result.getLength()); } }
private int evaluateInteger(IScalarEvaluator eval, int tIdx) throws HyracksDataException { tRef.reset(tAccess, tIdx); eval.evaluate(tRef, p); int lim = bii.getIntegerValue(p.getByteArray(), p.getStartOffset(), p.getLength()); return lim; }
@Override public void evaluate(IFrameTupleReference tuple, IPointable result) throws HyracksDataException { scanCollection.init(tuple); aggFunc.init(); while (scanCollection.step(listItemOut)) { itemTuple.reset(listItemOut.getByteArray(), listItemOut.getStartOffset(), listItemOut.getLength()); aggFunc.step(itemTuple); } aggFunc.finish(result); } }