Class ParentReferenceAggregateProviderDefinitionBuilder<DescriptionT>
- Type Parameters:
DescriptionT- The type of description built by the parent cube builder.
- All Implemented Interfaces:
ICanHaveFactFilter,ICanStartBuildingEpochDimension<DescriptionT>,ICanStartBuildingDataCube,IBuildableAggregateProviderDescriptionBuilder<DescriptionT>,IBuildableAggregateProviderDescriptionBuilder.AggregateProviderBuilder<DescriptionT>,IBuildableAggregateProviderDescriptionBuilder.PropertiedAggregateProviderDescriptionBuilder<DescriptionT>,IBuildableAggregateProviderDescriptionBuilder.TypedAggregateProviderDescriptionBuilder<DescriptionT>,ICanAddSharedContextValue<DescriptionT>,ICanBuildCommonCubeDescription<DescriptionT>,ICanBuildCubeDescription<DescriptionT>,ICanChangeRangeSharing<IBuildableAggregateProviderDescriptionBuilder.PropertiedAggregateProviderDescriptionBuilder<DescriptionT>>,ICanHaveProperty<IBuildableAggregateProviderDescriptionBuilder.PropertiedAggregateProviderDescriptionBuilder<DescriptionT>>,ICanStartBuildingAggregateProvider<DescriptionT>,ICanStartPartialProvider<DescriptionT>,ICanPartition<IBuildableAggregateProviderDescriptionBuilder<DescriptionT>>
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.activeviam.desc.build.IBuildableAggregateProviderDescriptionBuilder
IBuildableAggregateProviderDescriptionBuilder.AggregateProviderBuilder<DescriptionT>, IBuildableAggregateProviderDescriptionBuilder.LevelListBuilder<ParentT>, IBuildableAggregateProviderDescriptionBuilder.PartialBuilder<DescriptionT>, IBuildableAggregateProviderDescriptionBuilder.PartialWithHierarchiesRestrictionBuilder<DescriptionT>, IBuildableAggregateProviderDescriptionBuilder.PartialWithMeasuresRestrictionBuilder<DescriptionT>, IBuildableAggregateProviderDescriptionBuilder.PartialWithoutHierarchiesRestrictionBuilder<RestrictedBuilderT>, IBuildableAggregateProviderDescriptionBuilder.PartialWithoutMeasuresRestrictionBuilder<RestrictedBuilderT>, IBuildableAggregateProviderDescriptionBuilder.PartialWithoutRestrictionsBuilder<DescriptionT>, IBuildableAggregateProviderDescriptionBuilder.PropertiedAggregateProviderDescriptionBuilder<DescriptionT>, IBuildableAggregateProviderDescriptionBuilder.PropertiedPartialBuilder<DescriptionT>, IBuildableAggregateProviderDescriptionBuilder.TypedAggregateProviderDescriptionBuilder<DescriptionT>, IBuildableAggregateProviderDescriptionBuilder.TypedPartialBuilder<DescriptionT>Nested classes/interfaces inherited from interface com.activeviam.desc.build.ICanBuildCommonCubeDescription
ICanBuildCommonCubeDescription.IAggregationProceduresBuilder -
Field Summary
Fields inherited from interface com.activeviam.desc.build.IBuildableAggregateProviderDescriptionBuilder
ADAPTIVE_JIT_PLUGIN_TYPE, BITMAP_PLUGIN_TYPE, JIT_PLUGIN_TYPE, LEAF_PLUGIN_TYPE -
Constructor Summary
ConstructorsConstructorDescriptionParentReferenceAggregateProviderDefinitionBuilder(SimpleCubeDescriptionBuilder<DescriptionT> parent, String pluginKey, ImmutableList<IPartialProviderDefinition> partials, ImmutableMap<String, Object> properties, PartitioningDescriptionBuilder partitioningBuilder, String numaSelector) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionAdd a partial provider to this aggregate provider.Starts creating a data cube on top of the existing description.build()Builds the cube description.filteredOn(Map<LevelIdentifier, Object> filters) Filter the partial aggregate provider on certain levels.Starts building the aggregate provider description.withAggregateProvider(IAggregateProviderDefinition definition) Provide directly an aggregate provider description for this cube.Starts building theIAggregatesCachedescription.Starts building theIAggregatesContinuousQueryEnginedescription.withAggregationProcedures(Function<ICanBuildCommonCubeDescription.IAggregationProceduresBuilder, ICanBuildCommonCubeDescription.IAggregationProceduresBuilder> builderConsumer) Defines aggregation procedures on the cube.withDefaultMeasures(String... measures) Chooses the default measures of this cube.Starts building theIDrillthroughExecutordescription.Enables the epoch dimension for this cube and starts customizing it.withFilter(ICondition condition) Defines thefilter conditionfor the cube.withModuloPartitioning(int modulo, String... onFields) Defines a partitioning by hash code on multiple fields.withModuloPartitioning(String onField, int modulo) Adds a partitioning by hash code on the given field.withNumaSelector(String numaSelector) Chooses the NUMA selector for the partitions of the built aggregate provider.Disables auto-factless hierarchies for this cube.Start building a partial provider description.withPartitioning(String partitioning) Defines the partitioning of the store: which kind, on which field and how many partitions.IPartitioningNodeDescriptionBuilder.ICanHaveSpecialPartitioningRule<IBuildableAggregateProviderDescriptionBuilder<DescriptionT>>withPartitioningOn(String field) Defines ahierarchical partitioningwith the root node using the given field.IBuildableAggregateProviderDescriptionBuilder.PropertiedAggregateProviderDescriptionBuilder<DescriptionT>withProperty(String key, String value) Puts a property to initialize the component.Starts building theIActivePivotQueryExecutordescription.Adds a shared context value to the current cube description.withSharedContextValues(IContextValue... values) Adds a collection of shared context values to the cube description being currently built.ICanStartBuildingDrillthroughProperties.IDrillthroughPropertiesBuilder<ICanBuildCubeDescription<DescriptionT>>Begins defining thedrillthrough properties.Begins defining themdx context.Begins definingsub cube properties.IBuildableAggregateProviderDescriptionBuilder.TypedAggregateProviderDescriptionBuilder<DescriptionT>Give theIAggregateProvidertype / plugin key.withValuePartitioningOn(String onField) Adds a partitioning by value on theonField.Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.activeviam.desc.build.IBuildableAggregateProviderDescriptionBuilder.AggregateProviderBuilder
bitmap, jit, leafMethods inherited from interface com.activeviam.desc.build.ICanAddSharedContextValue
withSharedContextValueMethods inherited from interface com.activeviam.desc.build.ICanBuildCommonCubeDescription
withDefaultMeasureMethods inherited from interface com.activeviam.desc.build.ICanChangeRangeSharing
withoutRangeSharing, withRangeSharing, withRangeSharingMethods inherited from interface com.activeviam.desc.build.dimensions.ICanHaveFactFilter
withFilter
-
Constructor Details
-
ParentReferenceAggregateProviderDefinitionBuilder
public ParentReferenceAggregateProviderDefinitionBuilder(SimpleCubeDescriptionBuilder<DescriptionT> parent, String pluginKey, ImmutableList<IPartialProviderDefinition> partials, ImmutableMap<String, Object> properties, PartitioningDescriptionBuilder partitioningBuilder, String numaSelector) Constructor.- Parameters:
parent- The parent builderpartials- The partial providers.properties- The global aggregate provider properties.partitioningBuilder- The partitioning builder.numaSelector- The NUMA selector plugin key, can be null.
-
-
Method Details
-
withType
public IBuildableAggregateProviderDescriptionBuilder.TypedAggregateProviderDescriptionBuilder<DescriptionT> withType(String type) Description copied from interface:IBuildableAggregateProviderDescriptionBuilder.AggregateProviderBuilderGive theIAggregateProvidertype / plugin key.- Specified by:
withTypein interfaceIBuildableAggregateProviderDescriptionBuilder.AggregateProviderBuilder<DescriptionT>- Parameters:
type- The aggregate provider type.- Returns:
- The builder having taken the type into account.
-
withProperty
public IBuildableAggregateProviderDescriptionBuilder.PropertiedAggregateProviderDescriptionBuilder<DescriptionT> withProperty(String key, String value) Description copied from interface:ICanHavePropertyPuts a property to initialize the component.- Specified by:
withPropertyin interfaceICanHaveProperty<DescriptionT>- Parameters:
key- The property key.value- The property value.- Returns:
- this builder for chaining.
-
withNumaSelector
public IBuildableAggregateProviderDescriptionBuilder<DescriptionT> withNumaSelector(String numaSelector) Description copied from interface:IBuildableAggregateProviderDescriptionBuilderChooses the NUMA selector for the partitions of the built aggregate provider.- Specified by:
withNumaSelectorin interfaceIBuildableAggregateProviderDescriptionBuilder<DescriptionT>- Parameters:
numaSelector- The plugin key of the selector to use.- Returns:
- The builder for chained calls.
-
filteredOn
public IBuildableAggregateProviderDescriptionBuilder<DescriptionT> filteredOn(Map<LevelIdentifier, Object> filters) Description copied from interface:IBuildableAggregateProviderDescriptionBuilderFilter the partial aggregate provider on certain levels.This allows the provider to only load a slice of data instead of all the members of each level. The filters can be applied on any level handled by the partial provider.
- Specified by:
filteredOnin interfaceIBuildableAggregateProviderDescriptionBuilder<DescriptionT>
-
withPartialProvider
public IBuildableAggregateProviderDescriptionBuilder.PartialBuilder<DescriptionT> withPartialProvider()Description copied from interface:ICanStartPartialProviderStart building a partial provider description.- Specified by:
withPartialProviderin interfaceICanStartPartialProvider<DescriptionT>- Returns:
- The partial provider description builder.
-
addPartialProvider
public ParentReferenceAggregateProviderDefinitionBuilder<DescriptionT> addPartialProvider(IPartialProviderDefinition toAdd) Add a partial provider to this aggregate provider.- Parameters:
toAdd- The partial provider definition to add.- Returns:
- The builder for chained calls.
-
build
Description copied from interface:ICanBuildCommonCubeDescriptionBuilds the cube description.- Specified by:
buildin interfaceICanBuildCommonCubeDescription<DescriptionT>- Returns:
- the cube description.
-
withAggregationProcedures
public ICanBuildCommonCubeDescription<DescriptionT> withAggregationProcedures(Function<ICanBuildCommonCubeDescription.IAggregationProceduresBuilder, ICanBuildCommonCubeDescription.IAggregationProceduresBuilder> builderConsumer) Description copied from interface:ICanBuildCommonCubeDescriptionDefines aggregation procedures on the cube.Aggregation procedures offer means to support aggregated measures on analysis hierarchies.
- Specified by:
withAggregationProceduresin interfaceICanBuildCommonCubeDescription<DescriptionT>- Parameters:
builderConsumer- consumer of the builder to define the procedures- Returns:
- The builder for chained calls
-
withAggregateProvider
public IBuildableAggregateProviderDescriptionBuilder.AggregateProviderBuilder<DescriptionT> withAggregateProvider()Description copied from interface:ICanStartBuildingAggregateProviderStarts building the aggregate provider description.- Specified by:
withAggregateProviderin interfaceICanStartBuildingAggregateProvider<DescriptionT>- Returns:
- The aggregate provider description builder.
-
withAggregateProvider
public ICanBuildCubeDescription<DescriptionT> withAggregateProvider(IAggregateProviderDefinition definition) Description copied from interface:ICanStartBuildingAggregateProviderProvide directly an aggregate provider description for this cube.- Specified by:
withAggregateProviderin interfaceICanStartBuildingAggregateProvider<DescriptionT>- Parameters:
definition- The aggregate provider definition.- Returns:
- The cube builder.
-
withoutAutoFactlessHierarchies
Description copied from interface:ICanBuildCubeDescriptionDisables auto-factless hierarchies for this cube.- Specified by:
withoutAutoFactlessHierarchiesin interfaceICanBuildCubeDescription<DescriptionT>- Returns:
- The builder for chained calls.
-
withDrillthroughExecutor
Description copied from interface:ICanBuildCommonCubeDescriptionStarts building theIDrillthroughExecutordescription.- Specified by:
withDrillthroughExecutorin interfaceICanBuildCommonCubeDescription<DescriptionT>- Returns:
- The builder for the drillthrough executor description.
-
withQueryExecutor
Description copied from interface:ICanBuildCommonCubeDescriptionStarts building theIActivePivotQueryExecutordescription.- Specified by:
withQueryExecutorin interfaceICanBuildCommonCubeDescription<DescriptionT>- Returns:
- The builder for the query executor description.
-
withAggregatesContinuousQueryEngine
public IPluginDescriptionBuilder<ICanBuildCubeDescription<DescriptionT>> withAggregatesContinuousQueryEngine()Description copied from interface:ICanBuildCommonCubeDescriptionStarts building theIAggregatesContinuousQueryEnginedescription.- Specified by:
withAggregatesContinuousQueryEnginein interfaceICanBuildCommonCubeDescription<DescriptionT>- Returns:
- The builder for the aggregates continuous query engine description.
-
withAggregatesCache
public IAggregatesCacheDescriptionCompleteBuilder.AggregatesCacheDescriptionBuilder<DescriptionT> withAggregatesCache()Description copied from interface:ICanBuildCommonCubeDescriptionStarts building theIAggregatesCachedescription.- Specified by:
withAggregatesCachein interfaceICanBuildCommonCubeDescription<DescriptionT>- Returns:
- The builder for the aggregates cache.
-
withDefaultMeasures
Description copied from interface:ICanBuildCommonCubeDescriptionChooses the default measures of this cube.- Specified by:
withDefaultMeasuresin interfaceICanBuildCommonCubeDescription<DescriptionT>- Parameters:
measures- The default measures.- Returns:
- The builder for chained calls.
- See Also:
-
withFilter
Description copied from interface:ICanHaveFactFilterDefines thefilter conditionfor the cube.- Specified by:
withFilterin interfaceICanHaveFactFilter- Parameters:
condition- The condition of the filter.- Returns:
- The cube builder for chaining.
-
asDataCube
Description copied from interface:ICanStartBuildingDataCubeStarts creating a data cube on top of the existing description.- Specified by:
asDataCubein interfaceICanStartBuildingDataCube- Returns:
- The builder for chained calls.
-
withPartitioning
public IBuildableAggregateProviderDescriptionBuilder<DescriptionT> withPartitioning(String partitioning) Description copied from interface:ICanPartitionDefines the partitioning of the store: which kind, on which field and how many partitions.Example:
withPartitioning("hash16(id)|value(date)")means partitioning by hash onidand by value ondate, so that the partition id of a recordrwill (only) depend onr.readInt(id) % 16andr.readInt(date).- Specified by:
withPartitioningin interfaceICanPartition<DescriptionT>- Parameters:
partitioning- the definition of the partitioning, of the form hash64(FIELD_NAME), where hash is the type of partitioning, 64 the number of partitions, and FIELD_NAME the name of the field on which to partition- Returns:
- the builder
-
withValuePartitioningOn
public IBuildableAggregateProviderDescriptionBuilder<DescriptionT> withValuePartitioningOn(String onField) Description copied from interface:ICanPartitionAdds a partitioning by value on theonField. The partition id of a recordrwill depend (among other factor) onr.readInt(onField).- Specified by:
withValuePartitioningOnin interfaceICanPartition<DescriptionT>- Parameters:
onField- the field to partition by value- Returns:
- the builder
-
withModuloPartitioning
public IBuildableAggregateProviderDescriptionBuilder<DescriptionT> withModuloPartitioning(String onField, int modulo) Description copied from interface:ICanPartitionAdds a partitioning by hash code on the given field. The partition id of a recordrwill depend (among other factor) onr.readInt(onField) % modulo.- Specified by:
withModuloPartitioningin interfaceICanPartition<DescriptionT>- Parameters:
onField- the field whose value's hash code determine the partitionmodulo- the modulo- Returns:
- the builder
-
withModuloPartitioning
public IBuildableAggregateProviderDescriptionBuilder<DescriptionT> withModuloPartitioning(int modulo, String... onFields) Description copied from interface:ICanPartitionDefines a partitioning by hash code on multiple fields.For a record, the partition id is computed by taking the hashCode of the given fields, combining them in a single integer and taking the modulo of this integer.
As opposed to
ICanPartition.withModuloPartitioning(String, int), calling this method results in using amultiple field modulo partitioningon the store while the other may result in asingle field partitioningorpartitioning by Cartesian product, depending on the number of partitioning fields selected for the store.Calling this method with only one field will throw a
ConfigurationException.- Specified by:
withModuloPartitioningin interfaceICanPartition<DescriptionT>- Parameters:
modulo- the moduloonFields- the fields whose value determines the partition, having at least two elements- Returns:
- the builder
-
withPartitioningOn
public IPartitioningNodeDescriptionBuilder.ICanHaveSpecialPartitioningRule<IBuildableAggregateProviderDescriptionBuilder<DescriptionT>> withPartitioningOn(String field) Description copied from interface:ICanPartitionDefines ahierarchical partitioningwith the root node using the given field.- Specified by:
withPartitioningOnin interfaceICanPartition<DescriptionT>- Parameters:
field- the partitioning field- Returns:
- the builder for the
partitioning node
-
withEpochDimension
Description copied from interface:ICanStartBuildingEpochDimensionEnables the epoch dimension for this cube and starts customizing it.- Specified by:
withEpochDimensionin interfaceICanStartBuildingEpochDimension<DescriptionT>- Returns:
- The builder to start customizing the epoch dimension.
-