public class RolapHierarchy extends HierarchyBase
RolapHierarchy
implements Hierarchy
for a ROLAP database.
The ordinal of a hierarchy within a particular cube is found by
calling getOrdinalInCube()
. Ordinals are contiguous and zero-based.
Zero is always the [Measures]
dimension.
NOTE: It is only valid to call that method on the measures hierarchy, and
on members of the RolapCubeHierarchy
subclass. When the measures
hierarchy is of that class, we will move the method down.)
Modifier and Type | Class and Description |
---|---|
static class |
RolapHierarchy.LimitedRollupMember
Substitute for a member in a hierarchy whose rollup policy is 'partial'
or 'hidden'.
|
protected class |
RolapHierarchy.RolapCalculatedMeasure
Calculated member which is also a measure (that is, a member of the
[Measures] dimension).
|
OlapElement.LocalizedProperty
Modifier and Type | Field and Description |
---|---|
protected RolapLevel |
nullLevel
The level that the null member belongs too.
|
protected MondrianDef.RelationOrJoin |
relation |
protected MondrianDef.Hierarchy |
xmlHierarchy |
allLevelName, allMemberName, description, dimension, hasAll, levels, name, subName, uniqueName
caption, visible
Modifier and Type | Method and Description |
---|---|
protected int |
computeHashCode()
Computes this object's hash code.
|
static Map<String,Annotation> |
createAnnotationMap(MondrianDef.Annotations annotations) |
Member |
createMember(Member parent,
Level level,
String name,
Formula formula)
Creates a member of this hierarchy.
|
boolean |
equals(Object o) |
RolapMember |
getAllMember()
Returns the 'all' member.
|
Map<String,Annotation> |
getAnnotationMap()
Returns a list of annotations.
|
Member |
getDefaultMember()
Returns the default member of this hierarchy.
|
protected org.apache.log4j.Logger |
getLogger() |
Member |
getNullMember()
Returns a special member representing the "null" value.
|
int |
getOrdinalInCube()
Returns the ordinal of this hierarchy in its cube.
|
MondrianDef.RelationOrJoin |
getRelation() |
RolapSchema |
getRolapSchema() |
String |
getSharedHierarchyName()
Returns the name of the source hierarchy, if this hierarchy is shared,
otherwise null.
|
String |
getUniqueKeyLevelName()
Gets "unique key level name" attribute of this Hierarchy, if set.
|
MondrianDef.Hierarchy |
getXmlHierarchy() |
boolean |
isRagged()
A hierarchy is ragged if it contains one or more levels with hidden
members.
|
void |
setDefaultMember(Member defaultMember)
Sets default member of this Hierarchy.
|
equals, getAllLevelName, getAllMemberName, getDescription, getDimension, getHierarchy, getLevels, getName, getQualifiedName, getSubName, getUniqueName, getUniqueNameSsas, hasAll, lookupChild
clone, getCaption, getLocalized, hashCode, isVisible, setCaption, toString
finalize, getClass, notify, notifyAll, wait, wait, wait
getCaption, getLocalized, isVisible
protected MondrianDef.Hierarchy xmlHierarchy
protected MondrianDef.RelationOrJoin relation
protected final RolapLevel nullLevel
public static Map<String,Annotation> createAnnotationMap(MondrianDef.Annotations annotations)
protected org.apache.log4j.Logger getLogger()
getLogger
in class OlapElementBase
public boolean equals(Object o)
equals
in class OlapElementBase
protected int computeHashCode()
OlapElementBase
computeHashCode
in class OlapElementBase
public Map<String,Annotation> getAnnotationMap()
Annotated
The map may be empty, never null.
public RolapSchema getRolapSchema()
public MondrianDef.RelationOrJoin getRelation()
public MondrianDef.Hierarchy getXmlHierarchy()
public Member getDefaultMember()
Hierarchy
If a hierarchy is subject to access-control, the default member may
not be visible, so use SchemaReader.getHierarchyDefaultMember(mondrian.olap.Hierarchy)
.
public Member getNullMember()
Hierarchy
Lead
,
NextMember
and ParentMember
walk off the end
of the hierarchy.public RolapMember getAllMember()
public Member createMember(Member parent, Level level, String name, Formula formula)
Hierarchy
formula
must not be null.public String getSharedHierarchyName()
If this hierarchy is a public -- that is, it belongs to a dimension
which is a usage of a shared dimension -- then
sharedHierarchyName
holds the unique name of the shared
hierarchy; otherwise it is null.
Suppose this hierarchy is "Weekly" in the dimension "Order Date" of
cube "Sales", and that "Order Date" is a usage of the "Time"
dimension. Then sharedHierarchyName
will be
"[Time].[Weekly]".
public boolean isRagged()
isRagged
in class HierarchyBase
public void setDefaultMember(Member defaultMember)
defaultMember
- Default memberpublic String getUniqueKeyLevelName()
Gets "unique key level name" attribute of this Hierarchy, if set. If set, this property indicates that all level properties are functionally dependent (invariant) on their associated levels, and that the set of levels from the root to the named level (inclusive) effectively defines an alternate key.
This allows the GROUP BY to be eliminated from associated queries.
public int getOrdinalInCube()
Temporarily defined against RolapHierarchy; will be moved to RolapCubeHierarchy as soon as the measures hierarchy is a RolapCubeHierarchy.
Copyright © 2019 Hitachi Vantara. All rights reserved.