|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectmondrian.olap.OlapElementBase
mondrian.olap.MemberBase
mondrian.rolap.RolapMemberBase
mondrian.rolap.DelegatingRolapMember
mondrian.rolap.RolapCubeMember
public class RolapCubeMember
RolapCubeMember wraps RolapMembers and binds them to a specific cube. RolapCubeMember wraps or overrides RolapMember methods that directly reference the wrapped Member. Methods that only contain calls to other methods do not need wrapped.
| 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 | |
|---|---|
protected RolapCubeLevel |
cubeLevel
|
protected RolapCubeMember |
parentCubeMember
|
| 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 | |
|---|---|
RolapCubeMember(RolapCubeMember parent,
RolapMember member,
RolapCubeLevel cubeLevel)
Creates a RolapCubeMember. |
|
| Method Summary | |
|---|---|
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,
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()
|
| 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, isCalculated, isCalculatedInQuery, isChildOrEqualTo, isEvaluated, isHidden, isMeasure, isNull, isParentChildLeaf, 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 |
|---|
computeCalculated, 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.rolap.RolapMember |
|---|
getKey, isAllMember |
| Methods inherited from interface mondrian.olap.Member |
|---|
getAncestorMembers, getDepth, getMemberType, getOrderKey, getOrdinal, getParentUniqueName, getProperties, getPropertyFormattedValue, getPropertyValue, getSolveOrder, isAll, isCalculated, isCalculatedInQuery, isChildOrEqualTo, isEvaluated, isHidden, isMeasure, isNull, isParentChildLeaf, setName |
| Methods inherited from interface mondrian.olap.OlapElement |
|---|
getCaption, getDescription, getLocalized, getName, getQualifiedName, isVisible |
| Methods inherited from interface mondrian.olap.Annotated |
|---|
getAnnotationMap |
| Methods inherited from interface mondrian.rolap.RolapCalculation |
|---|
containsAggregateFunction, getCompiledExpression, getHierarchyOrdinal, getSolveOrder, isCalculatedInQuery, setContextIn |
| Field Detail |
|---|
protected final RolapCubeLevel cubeLevel
protected final RolapCubeMember parentCubeMember
| Constructor Detail |
|---|
public RolapCubeMember(RolapCubeMember parent,
RolapMember member,
RolapCubeLevel cubeLevel)
parent - Parent membermember - Member of underlying (non-cube) hierarchycubeLevel - Level| Method Detail |
|---|
public 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 DelegatingRolapMember
public void setProperty(String name,
Object value)
RolapMemberBaseWARNING: Setting system properties such as "$name" may have nasty side-effects.
setProperty in interface MembersetProperty in class DelegatingRolapMember
public Object getPropertyValue(String propertyName,
boolean matchCase)
MemberpropertyName,
matching according to the required case-sensitivity.
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()
MemberBase
getExpression in interface MembergetExpression in class DelegatingRolapMember
public OlapElement lookupChild(SchemaReader schemaReader,
Id.Segment childName,
MatchType matchType)
OlapElement
lookupChild in interface OlapElementlookupChild in class DelegatingRolapMember
|
|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||