static IncrementalIndexRow createTimeAndDimswithDimsKeySize( long timestamp, Object[] dims, List<IncrementalIndex.DimensionDesc> dimensionDescsList, long dimsKeySize ) { return new IncrementalIndexRow(timestamp, dims, dimensionDescsList, dimsKeySize); }
@Override public Iterable<IncrementalIndexRow> timeRangeIterable(boolean descending, long timeStart, long timeEnd) { if (!sortFacts) { throw new UnsupportedOperationException("can't get timeRange from unsorted facts data."); } IncrementalIndexRow start = new IncrementalIndexRow(timeStart, new Object[]{}, dimensionDescsList); IncrementalIndexRow end = new IncrementalIndexRow(timeEnd, new Object[]{}, dimensionDescsList); ConcurrentNavigableMap<IncrementalIndexRow, IncrementalIndexRow> subMap = ((ConcurrentNavigableMap<IncrementalIndexRow, IncrementalIndexRow>) facts).subMap(start, end); final Map<IncrementalIndexRow, IncrementalIndexRow> rangeMap = descending ? subMap.descendingMap() : subMap; return rangeMap.keySet(); }
static IncrementalIndexRow createTimeAndDimswithDimsKeySize( long timestamp, Object[] dims, List<IncrementalIndex.DimensionDesc> dimensionDescsList, long dimsKeySize ) { return new IncrementalIndexRow(timestamp, dims, dimensionDescsList, dimsKeySize); }
@Override public Iterable<IncrementalIndexRow> timeRangeIterable(boolean descending, long timeStart, long timeEnd) { if (!sortFacts) { throw new UnsupportedOperationException("can't get timeRange from unsorted facts data."); } IncrementalIndexRow start = new IncrementalIndexRow(timeStart, new Object[]{}, dimensionDescsList); IncrementalIndexRow end = new IncrementalIndexRow(timeEnd, new Object[]{}, dimensionDescsList); ConcurrentNavigableMap<IncrementalIndexRow, IncrementalIndexRow> subMap = ((ConcurrentNavigableMap<IncrementalIndexRow, IncrementalIndexRow>) facts).subMap(start, end); final Map<IncrementalIndexRow, IncrementalIndexRow> rangeMap = descending ? subMap.descendingMap() : subMap; return rangeMap.keySet(); }