Class ParentReferenceAggregateProviderDefinitionBuilder<DescriptionT>
- java.lang.Object
-
- com.activeviam.builders.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>>
public class ParentReferenceAggregateProviderDefinitionBuilder<DescriptionT> extends Object implements IBuildableAggregateProviderDescriptionBuilder.AggregateProviderBuilder<DescriptionT>, IBuildableAggregateProviderDescriptionBuilder.TypedAggregateProviderDescriptionBuilder<DescriptionT>, IBuildableAggregateProviderDescriptionBuilder.PropertiedAggregateProviderDescriptionBuilder<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
Constructors Constructor Description ParentReferenceAggregateProviderDefinitionBuilder(SimpleCubeDescriptionBuilder<DescriptionT> parent, String pluginKey, ImmutableList<IPartialProviderDefinition> partials, ImmutableMap<String,Object> properties, PartitioningDescriptionBuilder partitioningBuilder, String numaSelector)Constructor.
-
Method Summary
-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.activeviam.desc.build.IBuildableAggregateProviderDescriptionBuilder.AggregateProviderBuilder
bitmap, jit, leaf
-
Methods inherited from interface com.activeviam.desc.build.ICanAddSharedContextValue
withSharedContextValue
-
Methods inherited from interface com.activeviam.desc.build.ICanBuildCommonCubeDescription
withDefaultMeasure
-
Methods inherited from interface com.activeviam.desc.build.ICanChangeRangeSharing
withoutRangeSharing, withRangeSharing, withRangeSharing
-
Methods inherited from interface com.activeviam.desc.build.dimensions.ICanHaveFactFilter
withFilter
-
-
-
-
Constructor Detail
-
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 Detail
-
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
public DescriptionT 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
public ICanBuildCubeDescription<DescriptionT> withoutAutoFactlessHierarchies()
Description copied from interface:ICanBuildCubeDescriptionDisables auto-factless hierarchies for this cube.- Specified by:
withoutAutoFactlessHierarchiesin interfaceICanBuildCubeDescription<DescriptionT>- Returns:
- The builder for chained calls.
-
withDrillthroughExecutor
public IPluginDescriptionBuilder<ICanBuildCubeDescription<DescriptionT>> withDrillthroughExecutor()
Description copied from interface:ICanBuildCommonCubeDescriptionStarts building theIDrillthroughExecutordescription.- Specified by:
withDrillthroughExecutorin interfaceICanBuildCommonCubeDescription<DescriptionT>- Returns:
- The builder for the drillthrough executor description.
-
withQueryExecutor
public IPluginDescriptionBuilder<ICanBuildCubeDescription<DescriptionT>> 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
public ICanBuildCommonCubeDescription<DescriptionT> withDefaultMeasures(String... measures)
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:
IMeasuresDescription.getDefaultMeasures()
-
withSharedContextValue
public ICanBuildCubeDescription<DescriptionT> withSharedContextValue(IContextValue value)
Description copied from interface:ICanAddSharedContextValueAdds a shared context value to the current cube description.- Specified by:
withSharedContextValuein interfaceICanAddSharedContextValue<DescriptionT>- Parameters:
value- The value to add to the cube shared context.- Returns:
- The builder for chained calls.
-
withSharedContextValues
public ICanBuildCubeDescription<DescriptionT> withSharedContextValues(IContextValue... values)
Description copied from interface:ICanAddSharedContextValueAdds a collection of shared context values to the cube description being currently built. This is sugar syntax for repetitive calls toICanAddSharedContextValue.withSharedContextValue(IContextValue).- Specified by:
withSharedContextValuesin interfaceICanAddSharedContextValue<DescriptionT>- Parameters:
values- the context values to add- Returns:
- The builder for chained calls.
-
withSharedMdxContext
public ICanStartBuildingMdxContext.IMdxContextBuilder<ICanBuildCubeDescription<DescriptionT>> withSharedMdxContext()
Description copied from interface:ICanAddSharedContextValueBegins defining themdx context.- Specified by:
withSharedMdxContextin interfaceICanAddSharedContextValue<DescriptionT>- Returns:
- this builder for chaining.
-
withSharedDrillthroughProperties
public ICanStartBuildingDrillthroughProperties.IDrillthroughPropertiesBuilder<ICanBuildCubeDescription<DescriptionT>> withSharedDrillthroughProperties()
Description copied from interface:ICanAddSharedContextValueBegins defining thedrillthrough properties.- Specified by:
withSharedDrillthroughPropertiesin interfaceICanAddSharedContextValue<DescriptionT>- Returns:
- this builder for chaining.
-
withSharedSubCubeProperties
public ICanStartBuildingSubCubeProperties.IEmptyBuilder<ICanBuildCubeDescription<DescriptionT>> withSharedSubCubeProperties()
Description copied from interface:ICanAddSharedContextValueBegins definingsub cube properties.- Specified by:
withSharedSubCubePropertiesin interfaceICanAddSharedContextValue<DescriptionT>- Returns:
- this builder for chaining.
-
withFilter
public ICanBuildCubeDescription<IActivePivotInstanceDescription> withFilter(ICondition condition)
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
public IDataCubeDescriptionBuilder 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
public IEpochDimensionBuilder<DescriptionT> 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.
-
-