public QueryRanges asQueryRanges() { return new QueryRanges( Collections2.transform( partitionKeys, new Function<SinglePartitionInsertionIds, SinglePartitionQueryRanges>() { @Override public SinglePartitionQueryRanges apply(final SinglePartitionInsertionIds input) { return new SinglePartitionQueryRanges( input.getPartitionKey(), Collections2.transform( input.getSortKeys(), new Function<byte[], ByteArrayRange>() { @Override public ByteArrayRange apply(final byte[] input) { return new ByteArrayRange(input, input, false); } })); } })); }
@Override public QueryRanges getQueryRanges( final MultiDimensionalNumericData indexedRange, final int maxRangeDecomposition, final IndexMetaData... hints) { // a null return here should be interpreted as negative to positive // infinite return new QueryRanges(null, null); }
public ReaderParams<T> build() { if (queryRanges == null) { queryRanges = new QueryRanges(); } if (additionalAuthorizations == null) { additionalAuthorizations = new String[0]; } return new ReaderParams<>( index, adapterStore, internalAdapterStore, adapterIds, maxResolutionSubsamplingPerDimension, aggregation, fieldSubsets, isMixedVisibility, isAuthorizationsLimiting, isServersideAggregation, isClientsideRowMerging, queryRanges, filter, limit, maxRangeDecomposition, coordinateRanges, constraints, rowTransformer, additionalAuthorizations); } }
@Override public QueryRanges getQueryRanges( final MultiDimensionalNumericData indexedRange, final int maxRangeDecomposition, final IndexMetaData... hints) { final List<BinnedNumericDataset> binnedQueries = BinnedNumericDataset.applyBins(indexedRange, baseDefinitions); return new QueryRanges( BinnedSFCUtils.getQueryRanges(binnedQueries, sfc, maxRangeDecomposition, tier)); }
public BaseRowPrefixQuery( final Index index, final byte[] partitionKey, final byte[] sortKeyPrefix, final ScanCallback<T, ?> scanCallback, final DifferingFieldVisibilityEntryCount differingVisibilityCounts, final FieldVisibilityCount visibilityCounts, final DataIndexRetrieval dataIndexRetrieval, final String[] authorizations) { super( index, authorizations, scanCallback, differingVisibilityCounts, visibilityCounts, dataIndexRetrieval); final ByteArrayRange sortKeyPrefixRange = new ByteArrayRange(sortKeyPrefix, sortKeyPrefix, false); final List<SinglePartitionQueryRanges> ranges = new ArrayList<>(); final Collection<ByteArrayRange> sortKeys = Collections.singleton(sortKeyPrefixRange); ranges.add(new SinglePartitionQueryRanges(partitionKey, sortKeys)); queryRanges = new QueryRanges(ranges); }
public QueryRanges getQueryRanges() { return new QueryRanges( new ByteArrayRange( NumericFieldIndexStrategy.toIndexByte(lowerValue.doubleValue()), NumericFieldIndexStrategy.toIndexByte(upperValue.doubleValue()))); }
queryRangesList.add(new QueryRanges(partitionedRanges)); return new QueryRanges(queryRangesList);
return new QueryRanges(queryRanges);
public QueryRanges getQueryRanges() { return new QueryRanges( new ByteArrayRange( TemporalIndexStrategy.toIndexByte(start), TemporalIndexStrategy.toIndexByte(end))); }
public QueryRanges getQueryRanges() { // TODO case sensitivity return new QueryRanges( new ByteArrayRange( StringUtils.stringToBinary(matchValue), StringUtils.stringToBinary(matchValue))); }
if (targetIndexStrategy != null) { return new QueryRanges(new byte[][] {targetIndexStrategy.getPrefix()}); return new QueryRanges(); // implies in negative and ranges.add(indexStrategy.getQueryRanges(nd, maxRanges, hints)); return ranges.size() > 1 ? new QueryRanges(ranges) : ranges.get(0);
@Override public QueryRanges getQueryRanges( final MultiDimensionalNumericData indexedRange, final int maxEstimatedRangeDecomposition, final IndexMetaData... hints) { final byte[][] partitionIds = subStrategy1.getQueryPartitionKeys(indexedRange, extractHints(hints, 0)); final QueryRanges queryRanges = subStrategy2.getQueryRanges( indexedRange, maxEstimatedRangeDecomposition, extractHints(hints, 1)); return new QueryRanges(partitionIds, queryRanges); }
/** * Always returns a single range since this is a 1-dimensional index. The sort-order of the bytes * is the same as the sort order of values, so an indexedRange can be represented by a single * contiguous ByteArrayRange. {@inheritDoc} */ @Override public QueryRanges getQueryRanges( final MultiDimensionalNumericData indexedRange, final int maxEstimatedRangeDecomposition, final IndexMetaData... hints) { final T min = cast(indexedRange.getMinValuesPerDimension()[0]); final byte[] start = lexicoder.toByteArray(min); final T max = cast(Math.ceil(indexedRange.getMaxValuesPerDimension()[0])); final byte[] end = lexicoder.toByteArray(max); final ByteArrayRange range = new ByteArrayRange(start, end); final SinglePartitionQueryRanges partitionRange = new SinglePartitionQueryRanges(Collections.singletonList(range)); return new QueryRanges(Collections.singletonList(partitionRange)); }
false, false, new QueryRanges(new ByteArrayRange(sortKey, sortKey, false)), null, 1,