Package com.illumon.iris.db.v2.locations
Interface GroupingProvider
- All Known Subinterfaces:
KeyRangeGroupingProvider
- All Known Implementing Classes:
DiskBackedDeferredGroupingProvider,MemoizingGroupingProvider,PartitionColumnGroupingProvider,StaticGroupingProvider
public interface GroupingProvider
Implementations of this interface are able to compute groupings.
-
Method Summary
Modifier and TypeMethodDescriptionGet 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.static GroupingProvidermakeGroupingProvider(com.illumon.dataobjects.ColumnDefinition<?> columnDefinition, ColumnSource<?> source, com.fishlib.io.logger.Logger log) Make a newGroupingProviderfor the specifiedColumnDefinitionand current global configuration.
-
Method Details
-
makeGroupingProvider
@NotNull static GroupingProvider makeGroupingProvider(@NotNull com.illumon.dataobjects.ColumnDefinition<?> columnDefinition, @NotNull ColumnSource<?> source, @NotNull com.fishlib.io.logger.Logger log) Make a newGroupingProviderfor the specifiedColumnDefinitionand current global configuration.- Parameters:
columnDefinition- The column definitionlog- a logger- Returns:
- A new
GroupingProvider
-
getGroupingBuilder
Get aGroupingBuildersuitable for creating groups with specific properties.- Returns:
- a
GroupingBuilder
-
hasGrouping
boolean hasGrouping()Check if this provider is able to create a grouping for all included regions or not.- Returns:
- true if this provider can create a grouping.
-
hasGrouping
Check if this provider is able to create a grouping for all included regions or not.- Returns:
- true if this provider can create a grouping.
-