Package mondrian.rolap
Class RolapResult.CompoundSlicerRolapMember
- java.lang.Object
-
- mondrian.olap.OlapElementBase
-
- mondrian.olap.MemberBase
-
- mondrian.rolap.RolapMemberBase
-
- mondrian.rolap.DelegatingRolapMember
-
- mondrian.rolap.RolapResult.CompoundSlicerRolapMember
-
- All Implemented Interfaces:
Comparable
,Annotated
,Member
,OlapElement
,RolapMeasure
,RolapMember
- Enclosing class:
- RolapResult
public class RolapResult.CompoundSlicerRolapMember extends DelegatingRolapMember implements RolapMeasure
Member which holds the AggregateCalc used when evaluating a compound slicer. This is used to better handle some cases where calculated members elsewhere in the query can override the context of the slicer members. See MONDRIAN-1226.
-
-
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 inherited from class mondrian.rolap.DelegatingRolapMember
member
-
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 CompoundSlicerRolapMember(RolapMember placeholderMember, Calc calc, mondrian.rolap.RolapResult.ValueFormatter formatter, TupleList tupleList)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Calc
getCompiledExpression(mondrian.rolap.RolapEvaluatorRoot root)
Exp
getExpression()
Returns the expression by which this member is calculated.mondrian.rolap.RolapResult.ValueFormatter
getFormatter()
Returns the object that formats cells of this measure, or null to use default formatting.int
getSolveOrder()
CompoundSlicerRolapMember is always wrapped inside a CacheCalc.boolean
isEvaluated()
Returns whether this member should be evaluated within the Evaluator.boolean
isOnSameHierarchyChain(Member otherMember)
Returns true if this member is on the same hierarchy chain asotherMember
.boolean
isOnSameHierarchyChainInternal(MemberBase member2)
-
Methods inherited from class mondrian.rolap.DelegatingRolapMember
compareTo, getAncestorMembers, getAnnotationMap, getCaption, getDataMember, getDepth, getDescription, getDimension, getHierarchy, getKey, getLevel, getMemberType, getName, getOrderKey, getOrdinal, getParentMember, getParentUniqueName, getProperties, getPropertyFormattedValue, getPropertyValue, getPropertyValue, getQualifiedName, getUniqueName, isAll, isAllMember, isCalculated, isCalculatedInQuery, isChildOrEqualTo, isHidden, isMeasure, isNull, isParentChildLeaf, isParentChildPhysicalMember, lookupChild, setName, setProperty
-
Methods inherited from class mondrian.rolap.RolapMemberBase
childLevelHasApproxRowCount, containsAggregateFunction, equals, equals, getAllMembers, getCaptionValue, getHierarchyCardinality, getHierarchyOrdinal, getLogger, getPropertyFromMap, hashCode, keyToString, setCaptionValue, setContextIn, setOrdinal, setOrdinals, setUniqueName
-
Methods inherited from class mondrian.olap.MemberBase
computeCalculated, isChildOrEqualTo
-
Methods inherited from class mondrian.olap.OlapElementBase
clone, computeHashCode, getLocalized, isVisible, setCaption, toString
-
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 java.lang.Comparable
compareTo
-
Methods inherited from interface mondrian.olap.Member
getAncestorMembers, getDataMember, getDepth, getMemberType, getOrderKey, getOrdinal, getParentUniqueName, getProperties, getPropertyFormattedValue, getPropertyValue, getPropertyValue, isAll, isCalculated, isCalculatedInQuery, isChildOrEqualTo, isHidden, isMeasure, isNull, isParentChildLeaf, isParentChildPhysicalMember, setName, setProperty
-
Methods inherited from interface mondrian.olap.OlapElement
getCaption, getDescription, getDimension, getLocalized, getName, getQualifiedName, getUniqueName, isVisible, lookupChild
-
-
-
-
Constructor Detail
-
CompoundSlicerRolapMember
public CompoundSlicerRolapMember(RolapMember placeholderMember, Calc calc, mondrian.rolap.RolapResult.ValueFormatter formatter, TupleList tupleList)
-
-
Method Detail
-
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
-
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 classDelegatingRolapMember
-
getCompiledExpression
public Calc getCompiledExpression(mondrian.rolap.RolapEvaluatorRoot root)
- Overrides:
getCompiledExpression
in classRolapMemberBase
-
getSolveOrder
public int getSolveOrder()
CompoundSlicerRolapMember is always wrapped inside a CacheCalc. To maximize the benefit of the CacheCalc and the expression cache, the solve order of the CompoundSlicerRolapMember should be lower than all other calculations.- Specified by:
getSolveOrder
in interfaceMember
- Overrides:
getSolveOrder
in classDelegatingRolapMember
-
isOnSameHierarchyChain
public boolean isOnSameHierarchyChain(Member otherMember)
Description copied from interface:Member
Returns true if this member is on the same hierarchy chain asotherMember
.- Specified by:
isOnSameHierarchyChain
in interfaceMember
- Overrides:
isOnSameHierarchyChain
in classMemberBase
- Returns:
-
isOnSameHierarchyChainInternal
public boolean isOnSameHierarchyChainInternal(MemberBase member2)
- Overrides:
isOnSameHierarchyChainInternal
in classMemberBase
-
getFormatter
public mondrian.rolap.RolapResult.ValueFormatter getFormatter()
Description copied from interface:RolapMeasure
Returns the object that formats cells of this measure, or null to use default formatting.- Specified by:
getFormatter
in interfaceRolapMeasure
- Returns:
- formatter
-
-