private RowBasedKeySerdeHelper[] makeSerdeHelpers( boolean pushLimitDown, boolean enableRuntimeDictionaryGeneration ) { final List<RowBasedKeySerdeHelper> helpers = new ArrayList<>(); int keyBufferPosition = 0; for (int i = 0; i < dimCount; i++) { final StringComparator stringComparator; if (limitSpec != null) { final String dimName = dimensions.get(i).getOutputName(); stringComparator = DefaultLimitSpec.getComparatorForDimName(limitSpec, dimName); } else { stringComparator = null; } RowBasedKeySerdeHelper helper = makeSerdeHelper( valueTypes.get(i), keyBufferPosition, pushLimitDown, stringComparator, enableRuntimeDictionaryGeneration ); keyBufferPosition += helper.getKeyBufferValueSize(); helpers.add(helper); } return helpers.toArray(new RowBasedKeySerdeHelper[0]); }
private RowBasedKeySerdeHelper[] makeSerdeHelpers( boolean pushLimitDown, boolean enableRuntimeDictionaryGeneration ) { final List<RowBasedKeySerdeHelper> helpers = new ArrayList<>(); int keyBufferPosition = 0; for (int i = 0; i < dimCount; i++) { final StringComparator stringComparator; if (limitSpec != null) { final String dimName = dimensions.get(i).getOutputName(); stringComparator = DefaultLimitSpec.getComparatorForDimName(limitSpec, dimName); } else { stringComparator = null; } RowBasedKeySerdeHelper helper = makeSerdeHelper( valueTypes.get(i), keyBufferPosition, pushLimitDown, stringComparator, enableRuntimeDictionaryGeneration ); keyBufferPosition += helper.getKeyBufferValueSize(); helpers.add(helper); } return helpers.toArray(new RowBasedKeySerdeHelper[0]); }