public class RolapCube extends CubeBase
RolapCube
implements Cube
for a ROLAP database.Modifier and Type | Class and Description |
---|---|
static class |
RolapCube.CubeComparator |
OlapElement.LocalizedProperty
CATALOG_NAME, CUBE_NAME, DIMENSION_UNIQUE_NAME, dimensions, HIERARCHY_UNIQUE_NAME, LEVEL_NUMBER, LEVEL_UNIQUE_NAME, maxNofConstraintsForAdSchemaMember, MDPROP_USERDEFINED0, MDTREEOP_CHILDREN, MDTREEOP_SELF, MEMBER_CAPTION, MEMBER_NAME, MEMBER_TYPE, MEMBER_UNIQUE_NAME, name, SCHEMA_NAME, Tree_Operator
caption, visible
Modifier and Type | Method and Description |
---|---|
void |
clearCachedAggregations()
Clear the in memory aggregate cache associated with this Cube, but
only if Disabling Caching has been enabled.
|
void |
clearCachedAggregations(boolean forced)
Clear the in memory aggregate cache associated with this Cube.
|
Member |
createCalculatedMember(String xml)
Creates a calculated member in this cube.
|
RolapCubeLevel |
findBaseCubeLevel(RolapLevel level)
Locates the base cube level for a particular virtual level.
|
ExplicitRules.Group |
getAggGroup() |
Map<String,Annotation> |
getAnnotationMap()
Returns a list of annotations.
|
List<RolapCube> |
getBaseCubes()
Returns the list of base cubes associated with this cube
if this one is a virtual cube,
otherwise return just this cube
|
MondrianDef.RelationOrJoin |
getFact()
Returns this cube's fact table, null if the cube is virtual.
|
List<RolapHierarchy> |
getHierarchies()
Returns a list of all hierarchies in this cube, in order of dimension.
|
protected org.apache.log4j.Logger |
getLogger() |
Hierarchy |
getMeasuresHierarchy()
Returns the the measures hierarchy.
|
List<RolapMember> |
getMeasuresMembers() |
Member[] |
getMembersForQuery(String query,
List<Member> calcMembers)
Returns Member[].
|
NamedSet[] |
getNamedSets()
Returns the named sets of this cube.
|
RolapSchema |
getSchema() |
SchemaReader |
getSchemaReader()
Returns the schema reader which enforces the appropriate access-control
context.
|
SchemaReader |
getSchemaReader(Role role)
Returns a
SchemaReader for which this cube is the context for
lookup up members. |
RolapStar |
getStar()
Returns this cube's underlying star schema.
|
RolapHierarchy |
getTimeHierarchy(String funName)
Returns the time hierarchy for this cube.
|
HierarchyUsage[] |
getUsages(Hierarchy hierarchy)
A Hierarchy may have one or more HierarchyUsages.
|
boolean |
hasAggGroup() |
boolean |
isCacheAggregations()
Returns true if this Cube is either virtual or if the Cube's
RolapStar is caching aggregates.
|
boolean |
isLoadInProgress() |
boolean |
isVirtual()
Returns whether this cube is virtual.
|
OlapElement |
lookupChild(SchemaReader schemaReader,
Id.Segment s) |
OlapElement |
lookupChild(SchemaReader schemaReader,
Id.Segment s,
MatchType matchType)
Looks up a child element, returning null if it does not exist.
|
protected RolapStar.Column |
makeColumns(RolapStar.Table table,
RolapCubeLevel level,
RolapStar.Column parentColumn,
String usagePrefix)
Adds a column to the appropriate table in the
RolapStar . |
Set<Dimension> |
nonJoiningDimensions(Member[] tuple)
Finds out non joining dimensions for this cube.
|
Set<Dimension> |
nonJoiningDimensions(Set<Dimension> otherDims)
Finds out non joining dimensions for this cube.
|
void |
setCacheAggregations(boolean cache)
Set if this (non-virtual) Cube's RolapStar should cache
aggregations.
|
boolean |
shouldIgnoreUnrelatedDimensions(String baseCubeName)
This method tells us if unrelated dimensions to measures from
the input base cube should be pushed to default member or not
during aggregation.
|
getDescription, getDimension, getDimensions, getHierarchy, getMonthLevel, getName, getQualifiedName, getQuarterLevel, getUniqueName, getWeekLevel, getYearLevel, lookupDimension, lookupHierarchy
clone, computeHashCode, equals, equals, getCaption, getLocalized, hashCode, isVisible, setCaption, toString
finalize, getClass, notify, notifyAll, wait, wait, wait
getCaption, getLocalized, isVisible
protected org.apache.log4j.Logger getLogger()
getLogger
in class OlapElementBase
public Map<String,Annotation> getAnnotationMap()
Annotated
The map may be empty, never null.
public boolean hasAggGroup()
public ExplicitRules.Group getAggGroup()
public RolapSchema getSchema()
public NamedSet[] getNamedSets()
public SchemaReader getSchemaReader()
getSchemaReader(Role)
public SchemaReader getSchemaReader(Role role)
Cube
SchemaReader
for which this cube is the context for
lookup up members.
If role
is null, the returned schema reader also obeys the
access-control profile of role.public boolean isCacheAggregations()
public void setCacheAggregations(boolean cache)
cache
- Whether this Cube's RolapStar should cache aggregationspublic void clearCachedAggregations()
public void clearCachedAggregations(boolean forced)
public RolapStar getStar()
public HierarchyUsage[] getUsages(Hierarchy hierarchy)
hierarchy
- Hierarchyprotected RolapStar.Column makeColumns(RolapStar.Table table, RolapCubeLevel level, RolapStar.Column parentColumn, String usagePrefix)
RolapStar
.
Note that if the RolapLevel has a table attribute, then the associated
column needs to be associated with that table.public boolean shouldIgnoreUnrelatedDimensions(String baseCubeName)
baseCubeName
- name of the base cube for which we want
to check this propertypublic List<RolapHierarchy> getHierarchies()
TODO: Make this method return RolapCubeHierarchy, when the measures hierarchy is a RolapCubeHierarchy.
public boolean isLoadInProgress()
public Member[] getMembersForQuery(String query, List<Member> calcMembers)
Cube
query
has to be in the
format of something like "[with calculated members] select *members* on
columns from this
".public RolapHierarchy getTimeHierarchy(String funName)
public Set<Dimension> nonJoiningDimensions(Member[] tuple)
tuple
- array of memberspublic Set<Dimension> nonJoiningDimensions(Set<Dimension> otherDims)
otherDims
- Set of dimensions to be tested for existence in this
cubepublic MondrianDef.RelationOrJoin getFact()
public boolean isVirtual()
public RolapCubeLevel findBaseCubeLevel(RolapLevel level)
level
- virtual levelpublic OlapElement lookupChild(SchemaReader schemaReader, Id.Segment s)
public OlapElement lookupChild(SchemaReader schemaReader, Id.Segment s, MatchType matchType)
OlapElement
lookupChild
in interface OlapElement
lookupChild
in class CubeBase
public Hierarchy getMeasuresHierarchy()
public List<RolapMember> getMeasuresMembers()
public Member createCalculatedMember(String xml)
Cube
The XML string must be a <CalculatedMember/>
element, as defined in Mondrian.xml
.
xml
- XML stringCopyright © 2020 Hitachi Vantara. All rights reserved.