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:
java.lang.Comparable
,Annotated
,Member
,OlapElement
,RolapCalculation
,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, RolapResult.ValueFormatter formatter)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Calc
getCompiledExpression(RolapEvaluatorRoot root)
Returns the compiled expression to evaluate the scalar value of the current cell.Exp
getExpression()
Returns the expression by which this member is calculated.RolapResult.ValueFormatter
getFormatter()
Returns the object that formats cells of this measure, or null to use default formatting.int
getSolveOrder()
Returns the solve order of this calculation.boolean
isEvaluated()
Returns whether this member should be evaluated within the Evaluator.-
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, getHierarchyCardinality, getHierarchyOrdinal, getLogger, getPropertyFromMap, hashCode, keyToString, makeUniqueName, setContextIn, setOrderKey, setOrdinal, setOrdinals, setParentMember, 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 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, RolapResult.ValueFormatter formatter)
-
-
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(RolapEvaluatorRoot root)
Description copied from interface:RolapCalculation
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.- Specified by:
getCompiledExpression
in interfaceRolapCalculation
- Overrides:
getCompiledExpression
in classRolapMemberBase
- Parameters:
root
- Root evaluation context- Returns:
- Compiled scalar expression
-
getSolveOrder
public int getSolveOrder()
Description copied from interface:RolapCalculation
Returns the solve order of this calculation. Identifies which order calculations are expanded.- Specified by:
getSolveOrder
in interfaceMember
- Specified by:
getSolveOrder
in interfaceRolapCalculation
- Overrides:
getSolveOrder
in classDelegatingRolapMember
- Returns:
- Solve order
-
getFormatter
public 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
-
-