use of org.apache.hyracks.api.dataflow.value.IBinaryComparator in project asterixdb by apache.
the class MicroPreClusteredGroupRuntimeFactory method createOneOutputPushRuntime.
@Override
public AbstractOneInputOneOutputPushRuntime createOneOutputPushRuntime(final IHyracksTaskContext ctx) throws HyracksDataException {
final IBinaryComparator[] comparators = new IBinaryComparator[comparatorFactories.length];
for (int i = 0; i < comparatorFactories.length; ++i) {
comparators[i] = comparatorFactories[i].createBinaryComparator();
}
return new AbstractOneInputOneOutputPushRuntime() {
private PreclusteredGroupWriter pgw;
@Override
public void open() throws HyracksDataException {
pgw = new PreclusteredGroupWriter(ctx, groupFields, comparators, aggregatorFactory, inRecordDesc, outRecordDesc, writer);
pgw.open();
}
@Override
public void nextFrame(ByteBuffer buffer) throws HyracksDataException {
pgw.nextFrame(buffer);
}
@Override
public void fail() throws HyracksDataException {
pgw.fail();
}
@Override
public void close() throws HyracksDataException {
pgw.close();
}
@Override
public void flush() throws HyracksDataException {
pgw.flush();
}
};
}
Aggregations