Package mondrian.rolap
Class RolapHierarchy.LimitedRollupMember
- java.lang.Object
-
- mondrian.olap.OlapElementBase
-
- mondrian.olap.MemberBase
-
- mondrian.rolap.RolapMemberBase
-
- mondrian.rolap.DelegatingRolapMember
-
- mondrian.rolap.RolapCubeMember
-
- mondrian.rolap.RolapHierarchy.LimitedRollupMember
-
- All Implemented Interfaces:
Comparable
,Annotated
,Member
,OlapElement
,RolapCalculation
,RolapMember
,RolapMemberInCube
- Enclosing class:
- RolapHierarchy
public static class RolapHierarchy.LimitedRollupMember extends RolapCubeMember
Substitute for a member in a hierarchy whose rollup policy is 'partial' or 'hidden'. The member is calculated using an expression which aggregates only visible descendants.Note that this class extends RolapCubeMember only because other code expects that all members in a RolapCubeHierarchy are RolapCubeMembers. As part of
Bug.BugSegregateRolapCubeMemberFixed
, maybe makeRolapCubeMember
an interface.- See Also:
Role.RollupPolicy
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class mondrian.rolap.RolapMemberBase
RolapMemberBase.DefaultPropertyValueMapFactory, RolapMemberBase.PropertyValueMapFactory, RolapMemberBase.PropertyValueMapFactoryFactory
-
Nested classes/interfaces inherited from interface mondrian.olap.Member
Member.MemberType
-
Nested classes/interfaces inherited from interface mondrian.olap.OlapElement
OlapElement.LocalizedProperty
-
-
Field Summary
Fields Modifier and Type Field Description (package private) Role.HierarchyAccess
hierarchyAccess
RolapMember
member
-
Fields inherited from class mondrian.rolap.RolapCubeMember
cubeLevel, parentCubeMember
-
Fields inherited from class mondrian.olap.MemberBase
flags, level, parentMember, uniqueName
-
Fields inherited from class mondrian.olap.OlapElementBase
caption, visible
-
-
Constructor Summary
Constructors Constructor Description LimitedRollupMember(RolapCubeMember member, Exp exp, Role.HierarchyAccess hierarchyAccess)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
computeCalculated(Member.MemberType memberType)
Computes the value to be returned byMemberBase.isCalculated()
, so it can be cached in a variable.boolean
equals(Object o)
Exp
getExpression()
Returns the expression by which this member is calculated.int
hashCode()
boolean
isCalculated()
Returns whether this member is computed using either awith member
clause in an mdx query or a calculated member defined in cube.boolean
isEvaluated()
Returns whether this member should be evaluated within the Evaluator.-
Methods inherited from class mondrian.rolap.RolapCubeMember
compareTo, equals, getCube, getDataMember, getDimension, getHierarchy, getLevel, getParentMember, getPropertyValue, getRolapMember, getUniqueName, lookupChild, setProperty, toString
-
Methods inherited from class mondrian.rolap.DelegatingRolapMember
getAncestorMembers, getAnnotationMap, getCaption, getDepth, getDescription, getKey, getMemberType, getName, getOrderKey, getOrdinal, getParentUniqueName, getProperties, getPropertyFormattedValue, getPropertyValue, getQualifiedName, getSolveOrder, isAll, isAllMember, isCalculatedInQuery, isChildOrEqualTo, isHidden, isMeasure, isNull, isParentChildLeaf, isParentChildPhysicalMember, setName
-
Methods inherited from class mondrian.rolap.RolapMemberBase
childLevelHasApproxRowCount, containsAggregateFunction, getAllMembers, getCompiledExpression, getHierarchyCardinality, getHierarchyOrdinal, getLogger, getPropertyFromMap, keyToString, makeUniqueName, setContextIn, setOrderKey, setOrdinal, setOrdinals, setParentMember, setUniqueName
-
Methods inherited from class mondrian.olap.MemberBase
isChildOrEqualTo
-
Methods inherited from class mondrian.olap.OlapElementBase
clone, computeHashCode, getLocalized, isVisible, setCaption
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface mondrian.olap.Annotated
getAnnotationMap
-
Methods inherited from interface mondrian.olap.Member
getAncestorMembers, getDepth, getMemberType, getOrderKey, getOrdinal, getParentUniqueName, getProperties, getPropertyFormattedValue, getPropertyValue, getSolveOrder, isAll, isCalculatedInQuery, isChildOrEqualTo, isHidden, isMeasure, isNull, isParentChildLeaf, isParentChildPhysicalMember, setName
-
Methods inherited from interface mondrian.olap.OlapElement
getCaption, getDescription, getLocalized, getName, getQualifiedName, isVisible
-
Methods inherited from interface mondrian.rolap.RolapCalculation
containsAggregateFunction, getCompiledExpression, getHierarchyOrdinal, getSolveOrder, isCalculatedInQuery, setContextIn
-
Methods inherited from interface mondrian.rolap.RolapMember
getKey, isAllMember
-
-
-
-
Field Detail
-
member
public final RolapMember member
-
hierarchyAccess
final Role.HierarchyAccess hierarchyAccess
-
-
Constructor Detail
-
LimitedRollupMember
LimitedRollupMember(RolapCubeMember member, Exp exp, Role.HierarchyAccess hierarchyAccess)
-
-
Method Detail
-
equals
public boolean equals(Object o)
- Overrides:
equals
in classRolapCubeMember
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classRolapCubeMember
-
getExpression
public Exp getExpression()
Description copied from class:MemberBase
Returns the expression by which this member is calculated. The expression is not null if and only if the member is not calculated.- Specified by:
getExpression
in interfaceMember
- Overrides:
getExpression
in classRolapCubeMember
-
computeCalculated
protected boolean computeCalculated(Member.MemberType memberType)
Description copied from class:MemberBase
Computes the value to be returned byMemberBase.isCalculated()
, so it can be cached in a variable.- Overrides:
computeCalculated
in classMemberBase
- Parameters:
memberType
- Member type- Returns:
- Whether this member is calculated
-
isCalculated
public boolean isCalculated()
Description copied from interface:Member
Returns whether this member is computed using either awith member
clause in an mdx query or a calculated member defined in cube.- Specified by:
isCalculated
in interfaceMember
- Overrides:
isCalculated
in classDelegatingRolapMember
-
isEvaluated
public boolean isEvaluated()
Description copied from interface:Member
Returns whether this member should be evaluated within the Evaluator.Normally
Member.isCalculated()
andMember.isEvaluated()
should return the same value, but in situations where mondrian would like to treat the two concepts separately such in role based security, these values may differ.- Specified by:
isEvaluated
in interfaceMember
- Overrides:
isEvaluated
in classDelegatingRolapMember
- Returns:
- true if evaluated
-
-