Package com.illumon.iris.db.v2.dataindex
Class PartitionColumnGroupingProvider
java.lang.Object
com.illumon.iris.db.v2.dataindex.MemoizingGroupingProvider
com.illumon.iris.db.v2.dataindex.PartitionColumnGroupingProvider
- All Implemented Interfaces:
GroupingProvider,KeyRangeGroupingProvider
public class PartitionColumnGroupingProvider
extends MemoizingGroupingProvider
implements KeyRangeGroupingProvider
A
KeyRangeGroupingProvider for partitioning columns.-
Constructor Summary
ConstructorsConstructorDescriptionPartitionColumnGroupingProvider(String columnName, Function<ColumnLocation, String> partitionValueFactory) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddSource(ColumnLocation columnLocation, long firstKey, long lastKey) Add a column location for consideration when constructing groupings.Get aGroupingBuildersuitable for creating groups with specific properties.booleanCheck if this provider is able to create a grouping for all included regions or not.booleanhasGrouping(ReadOnlyIndex relevantIndex) Check if this provider is able to create a grouping for all included regions or not.make(String name, ColumnSource<?> source) Methods inherited from class com.illumon.iris.db.v2.dataindex.MemoizingGroupingProvider
clearMemoizedGroupings, memoizeGrouping
-
Constructor Details
-
PartitionColumnGroupingProvider
public PartitionColumnGroupingProvider(String columnName, Function<ColumnLocation, String> partitionValueFactory)
-
-
Method Details
-
make
public static PartitionColumnGroupingProvider make(@NotNull String name, @NotNull ColumnSource<?> source) -
getGroupingBuilder
Description copied from interface:GroupingProviderGet aGroupingBuildersuitable for creating groups with specific properties.- Specified by:
getGroupingBuilderin interfaceGroupingProvider- Returns:
- a
GroupingBuilder
-
addSource
Description copied from interface:KeyRangeGroupingProviderAdd a column location for consideration when constructing groupings.- Specified by:
addSourcein interfaceKeyRangeGroupingProvider- Parameters:
columnLocation- The column location to addfirstKey- The first key in the range for this column locationlastKey- The last key in the range for this column location (inclusive)
-
hasGrouping
public boolean hasGrouping()Description copied from interface:GroupingProviderCheck if this provider is able to create a grouping for all included regions or not.- Specified by:
hasGroupingin interfaceGroupingProvider- Returns:
- true if this provider can create a grouping.
-
hasGrouping
Description copied from interface:GroupingProviderCheck if this provider is able to create a grouping for all included regions or not.- Specified by:
hasGroupingin interfaceGroupingProvider- Returns:
- true if this provider can create a grouping.
-