public class RolapCubeMember extends DelegatingRolapMember implements RolapMemberInCube
RolapMemberBase.DefaultPropertyValueMapFactory, RolapMemberBase.PropertyValueMapFactory, RolapMemberBase.PropertyValueMapFactoryFactoryMember.MemberTypeOlapElement.LocalizedProperty| Modifier and Type | Field and Description | 
|---|---|
protected RolapCubeLevel | 
cubeLevel  | 
protected RolapCubeMember | 
parentCubeMember  | 
memberflags, level, parentMember, uniqueNamecaption, visible| Constructor and Description | 
|---|
RolapCubeMember(RolapCubeMember parent,
               RolapMember member,
               RolapCubeLevel cubeLevel)
Creates a RolapCubeMember. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
int | 
compareTo(Object o)
Compares this member to another  
RolapMemberBase. | 
boolean | 
equals(Object o)  | 
boolean | 
equals(OlapElement o)  | 
RolapCube | 
getCube()
Returns the cube this cube member belongs to. 
 | 
RolapCubeMember | 
getDataMember()
Returns the system-generated data member that is associated with a
 nonleaf member of a dimension. 
 | 
RolapCubeDimension | 
getDimension()
Returns the dimension of a this expression, or null if no dimension is
 defined. 
 | 
Exp | 
getExpression()
Returns the expression by which this member is calculated. 
 | 
RolapCubeHierarchy | 
getHierarchy()  | 
RolapCubeLevel | 
getLevel() | 
RolapCubeMember | 
getParentMember()
Returns this member's parent, or null (not the 'null member', as
 returned by  
Hierarchy.getNullMember()) if it has no parent. | 
Object | 
getPropertyValue(String propertyName)
Returns the value of the property named  
propertyName. | 
Object | 
getPropertyValue(String propertyName,
                boolean matchCase)
Returns the value of the property named  
propertyName,
 matching according to the required case-sensitivity. | 
RolapMember | 
getRolapMember()
Returns the underlying member. 
 | 
String | 
getUniqueName()  | 
int | 
hashCode()  | 
OlapElement | 
lookupChild(SchemaReader schemaReader,
           Id.Segment childName,
           MatchType matchType)
Looks up a child element, returning null if it does not exist. 
 | 
void | 
setProperty(String name,
           Object value)
Sets a property of this member to a given value. 
 | 
String | 
toString()  | 
getAncestorMembers, getAnnotationMap, getCaption, getDepth, getDescription, getKey, getMemberType, getName, getOrderKey, getOrdinal, getParentUniqueName, getProperties, getPropertyFormattedValue, getQualifiedName, getSolveOrder, isAll, isAllMember, isCalculated, isCalculatedInQuery, isChildOrEqualTo, isEvaluated, isHidden, isMeasure, isNull, isParentChildLeaf, isParentChildPhysicalMember, setNamechildLevelHasApproxRowCount, containsAggregateFunction, getAllMembers, getCaptionValue, getCompiledExpression, getHierarchyCardinality, getHierarchyOrdinal, getLogger, getPropertyFromMap, keyToString, makeUniqueName, setCaptionValue, setContextIn, setOrderKey, setOrdinal, setOrdinals, setParentMember, setUniqueNamecomputeCalculated, isChildOrEqualToclone, computeHashCode, getLocalized, isVisible, setCaptionfinalize, getClass, notify, notifyAll, wait, wait, waitgetKey, isAllMembergetAncestorMembers, getDepth, getMemberType, getOrderKey, getOrdinal, getParentUniqueName, getProperties, getPropertyFormattedValue, getSolveOrder, isAll, isCalculated, isCalculatedInQuery, isChildOrEqualTo, isEvaluated, isHidden, isMeasure, isNull, isParentChildLeaf, isParentChildPhysicalMember, setNamegetCaption, getDescription, getLocalized, getName, getQualifiedName, isVisiblegetAnnotationMapcontainsAggregateFunction, getCompiledExpression, getHierarchyOrdinal, getSolveOrder, isCalculatedInQuery, setContextInprotected final RolapCubeLevel cubeLevel
protected final RolapCubeMember parentCubeMember
public RolapCubeMember(RolapCubeMember parent, RolapMember member, RolapCubeLevel cubeLevel)
parent - Parent membermember - Member of underlying (non-cube) hierarchycubeLevel - Levelpublic String getUniqueName()
getUniqueName in interface OlapElementgetUniqueName in class DelegatingRolapMemberpublic final RolapMember getRolapMember()
public final RolapCube getCube()
RolapMemberInCubeThis method is not in the RolapMember interface, because
 regular members may be shared, and therefore do not belong to a specific
 cube.
getCube in interface RolapMemberInCubepublic final RolapCubeMember getDataMember()
MemberReturns this member if this member is a leaf member, or if the nonleaf member does not have an associated data member.
getDataMember in interface MembergetDataMember in class DelegatingRolapMemberpublic int compareTo(Object o)
RolapMemberBaseRolapMemberBase.
 The method first compares on keys; null keys always collate last. If the keys are equal, it compares using unique name.
This method does not consider RolapMemberBase.ordinal field, because
 ordinal is only unique within a parent. If you want to compare
 members which may be at any position in the hierarchy, use
 FunUtil.compareHierarchically(mondrian.olap.Member, mondrian.olap.Member, boolean).
compareTo in interface ComparablecompareTo in class DelegatingRolapMemberpublic String toString()
toString in class OlapElementBasepublic int hashCode()
hashCode in class RolapMemberBasepublic boolean equals(Object o)
equals in class RolapMemberBasepublic boolean equals(OlapElement o)
equals in class RolapMemberBasepublic final RolapCubeHierarchy getHierarchy()
getHierarchy in interface MembergetHierarchy in interface OlapElementgetHierarchy in interface RolapMembergetHierarchy in class DelegatingRolapMemberpublic final RolapCubeDimension getDimension()
OlapElementExample 1:
has dimension[Sales].children
[Sales].
 Example 2:
 order(except([Promotion Media].[Media Type].members,
              {[Promotion Media].[Media Type].[No Media]}),
       [Measures].[Unit Sales], DESC)
 
 has dimension [Promotion Media].
 Example 3:
 CrossJoin([Product].[Product Department].members,
           [Gender].members)
 
 has no dimension (well, actually it is [Product] x [Gender], but we
 can't represent that, so we return null);getDimension in interface OlapElementgetDimension in class DelegatingRolapMemberpublic final RolapCubeLevel getLevel()
This method is central to how RolapCubeMember works. It allows a member from the cache to be used within different usages of the same shared dimension. The cache member is the same, but the RolapCubeMembers wrapping the cache member report that they belong to different levels, and hence different hierarchies, dimensions, and cubes.
getLevel in interface MembergetLevel in interface RolapMembergetLevel in class DelegatingRolapMemberpublic void setProperty(String name, Object value)
RolapMemberBaseWARNING: Setting system properties such as "$name" may have nasty side-effects.
setProperty in interface MembersetProperty in class DelegatingRolapMemberpublic Object getPropertyValue(String propertyName, boolean matchCase)
MemberpropertyName,
 matching according to the required case-sensitivity.getPropertyValue in interface MembergetPropertyValue in class DelegatingRolapMemberpublic Object getPropertyValue(String propertyName)
MemberpropertyName.
 Name match is case-sensitive.getPropertyValue in interface MembergetPropertyValue in class DelegatingRolapMemberpublic final RolapCubeMember getParentMember()
MemberHierarchy.getNullMember()) if it has no parent.
 In an access-control context, a member may have no visible
 parents, so use SchemaReader.getMemberParent(mondrian.olap.Member).
getParentMember in interface MembergetParentMember in interface RolapMembergetParentMember in class DelegatingRolapMemberpublic Exp getExpression()
MemberBasegetExpression in interface MembergetExpression in class DelegatingRolapMemberpublic OlapElement lookupChild(SchemaReader schemaReader, Id.Segment childName, MatchType matchType)
OlapElementlookupChild in interface OlapElementlookupChild in class DelegatingRolapMember