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,RolapMember,RolapMemberInCube
- Enclosing class:
- RolapHierarchy
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 make RolapCubeMember an interface.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class mondrian.rolap.RolapMemberBase
RolapMemberBase.DefaultPropertyValueMapFactory, RolapMemberBase.PropertyValueMapFactory, RolapMemberBase.PropertyValueMapFactoryFactoryNested classes/interfaces inherited from interface mondrian.olap.Member
Member.MemberTypeNested classes/interfaces inherited from interface mondrian.olap.OlapElement
OlapElement.LocalizedProperty -
Field Summary
FieldsFields inherited from class mondrian.rolap.RolapCubeMember
cubeLevel, parentCubeMemberFields inherited from class mondrian.olap.MemberBase
flags, level, parentMember, uniqueNameFields inherited from class mondrian.olap.OlapElementBase
caption, visible -
Method Summary
Modifier and TypeMethodDescriptionprotected booleancomputeCalculated(Member.MemberType memberType) Computes the value to be returned byMemberBase.isCalculated(), so it can be cached in a variable.booleanReturns whether this calculation contains an aggregate function.booleangetCompiledExpression(mondrian.rolap.RolapEvaluatorRoot root) Returns the compiled expression to evaluate the scalar value of the current cell.Returns the expression by which this member is calculated.intReturns the ordinal of this calculation; to resolve ties.intReturns the solve order of this calculation.inthashCode()booleanReturns whether this member is computed using either awith memberclause in an mdx query or a calculated member defined in cube.booleanReturns whether this calculation is a member is computed from aWITH MEMBERclause in an MDX query.booleanReturns whether this member should be evaluated within the Evaluator.voidsetContextIn(RolapEvaluator evaluator) Pushes this calculated member or tuple onto the stack of evaluation contexts, and sets the context to the default member of the hierarchy.Methods inherited from class mondrian.rolap.RolapCubeMember
compareTo, equals, getCube, getDataMember, getDimension, getHierarchy, getLevel, getParentMember, getPropertyValue, getPropertyValue, getRolapMember, getUniqueName, lookupChild, setProperty, toStringMethods inherited from class mondrian.rolap.DelegatingRolapMember
getAncestorMembers, getAnnotationMap, getCaption, getDepth, getDescription, getKey, getMemberType, getName, getOrderKey, getOrdinal, getParentUniqueName, getProperties, getPropertyFormattedValue, getQualifiedName, getSolveOrder, isAll, isAllMember, isCalculatedInQuery, isChildOrEqualTo, isHidden, isMeasure, isNull, isParentChildLeaf, isParentChildPhysicalMember, setNameMethods inherited from class mondrian.rolap.RolapMemberBase
childLevelHasApproxRowCount, containsAggregateFunction, getAllMembers, getCaptionValue, getCompiledExpression, getHierarchyCardinality, getHierarchyOrdinal, getLogger, getPropertyFromMap, keyToString, setCaptionValue, setContextIn, setOrdinal, setOrdinals, setUniqueNameMethods inherited from class mondrian.olap.MemberBase
isChildOrEqualTo, isOnSameHierarchyChain, isOnSameHierarchyChainInternalMethods inherited from class mondrian.olap.OlapElementBase
clone, computeHashCode, getLocalized, isVisible, setCaptionMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface mondrian.olap.Annotated
getAnnotationMapMethods inherited from interface mondrian.olap.Member
getAncestorMembers, getDepth, getMemberType, getOrderKey, getOrdinal, getParentUniqueName, getProperties, getPropertyFormattedValue, getSolveOrder, isAll, isCalculatedInQuery, isChildOrEqualTo, isHidden, isMeasure, isNull, isOnSameHierarchyChain, isParentChildLeaf, isParentChildPhysicalMember, setNameMethods inherited from interface mondrian.olap.OlapElement
getCaption, getDescription, getLocalized, getName, getQualifiedName, isVisibleMethods inherited from interface mondrian.rolap.RolapMember
getKey, isAllMember
-
Field Details
-
member
-
-
Method Details
-
equals
- Overrides:
equalsin classRolapCubeMember
-
hashCode
public int hashCode()- Overrides:
hashCodein classRolapCubeMember
-
getExpression
Description copied from class:MemberBaseReturns the expression by which this member is calculated. The expression is not null if and only if the member is not calculated.- Specified by:
getExpressionin interfaceMember- Overrides:
getExpressionin classRolapCubeMember
-
computeCalculated
Description copied from class:MemberBaseComputes the value to be returned byMemberBase.isCalculated(), so it can be cached in a variable.- Overrides:
computeCalculatedin classMemberBase- Parameters:
memberType- Member type- Returns:
- Whether this member is calculated
-
isCalculated
public boolean isCalculated()Description copied from interface:MemberReturns whether this member is computed using either awith memberclause in an mdx query or a calculated member defined in cube.- Specified by:
isCalculatedin interfaceMember- Overrides:
isCalculatedin classDelegatingRolapMember
-
isEvaluated
public boolean isEvaluated()Description copied from interface:MemberReturns 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:
isEvaluatedin interfaceMember- Overrides:
isEvaluatedin classDelegatingRolapMember- Returns:
- true if evaluated
-
setContextIn
Pushes this calculated member or tuple onto the stack of evaluation contexts, and sets the context to the default member of the hierarchy.- Parameters:
evaluator- Evaluator
-
getSolveOrder
int getSolveOrder()Returns the solve order of this calculation. Identifies which order calculations are expanded.- Returns:
- Solve order
-
getHierarchyOrdinal
int getHierarchyOrdinal()Returns the ordinal of this calculation; to resolve ties.- Returns:
- Ordinal or calculation
-
isCalculatedInQuery
boolean isCalculatedInQuery()Returns whether this calculation is a member is computed from aWITH MEMBERclause in an MDX query.- Returns:
- whether this calculation is computed in an MDX query
-
getCompiledExpression
Returns the compiled expression to evaluate the scalar value of the current cell. This method will be called frequently, so the implementation should probably compile once and cache the result.- Parameters:
root- Root evaluation context- Returns:
- Compiled scalar expression
-
containsAggregateFunction
boolean containsAggregateFunction()Returns whether this calculation contains an aggregate function.- Returns:
- Whether this calculation contains an aggregate function.
-