mondrian.rolap
Class RolapCubeLevel

java.lang.Object
  extended by mondrian.olap.OlapElementBase
      extended by mondrian.olap.LevelBase
          extended by mondrian.rolap.RolapLevel
              extended by mondrian.rolap.RolapCubeLevel
All Implemented Interfaces:
Level, OlapElement

public class RolapCubeLevel
extends RolapLevel

RolapCubeLevel wraps a RolapLevel for a specific Cube.

Author:
Will Gorman (wgorman@pentaho.org)
 

Nested Class Summary
(package private) static class RolapCubeLevel.AllLevelReaderImpl
          Level reader for the level which contains the 'all' member.
(package private) static interface RolapCubeLevel.LevelReader
          Encapsulation of the difference between levels in terms of how constraints are generated.
(package private) static class RolapCubeLevel.NullLevelReader
          Level reader for the level which contains the null member.
(package private)  class RolapCubeLevel.ParentChildLevelReaderImpl
          Level reader for a parent-child level which has a closed peer level.
(package private)  class RolapCubeLevel.RegularLevelReader
          Level reader for a regular level.
 
Nested classes/interfaces inherited from class mondrian.rolap.RolapLevel
RolapLevel.HideMemberCondition
 
Field Summary
protected  RolapCubeLevel.LevelReader levelReader
           
 
Fields inherited from class mondrian.rolap.RolapLevel
captionExp, FLAG_ALL, FLAG_UNIQUE, keyExp, nameExp, ordinalExp, parentExp, xmlClosure
 
Fields inherited from class mondrian.olap.LevelBase
approxRowCount, depth, description, hierarchy, levelType, memberFormatter, name, uniqueName
 
Fields inherited from class mondrian.olap.OlapElementBase
caption
 
Constructor Summary
RolapCubeLevel(RolapLevel level, RolapCubeHierarchy hierarchy)
           
 
Method Summary
 boolean equals(RolapCubeLevel level)
           
 RolapStar.Column getBaseStarKeyColumn(RolapCube baseCube)
          this method returns the RolapStar.Column if non-virtual, if virtual, find the base cube level and return it's column
 RolapCubeLevel getChildLevel()
           
 RolapCube getCube()
          Returns the (non virtual) cube this level belongs to.
 RolapCubeHierarchy getHierarchy()
           
(package private)  RolapCubeLevel.LevelReader getLevelReader()
           
 MemberFormatter getMemberFormatter()
          Returns the object which is used to format members of this level.
 RolapCubeLevel getParentLevel()
           
 RolapLevel getRolapLevel()
           
 RolapStar.Column getStarKeyColumn()
          This is the RolapStar.Column that is related to this RolapCubeLevel
(package private)  boolean hasClosedPeer()
          Returns true when the level is part of a parent/child hierarchy and has an equivalent closed level.
(package private)  void init(MondrianDef.CubeDimension xmlDimension)
           
 void setStarKeyColumn(RolapStar.Column column)
           
 
Methods inherited from class mondrian.rolap.RolapLevel
areMembersUnique, getApproxRowCount, getCaptionExp, getClosedPeer, getDatatype, getFlags, getHideMemberCondition, getInheritedProperties, getKeyExp, getLogger, getNameExp, getNullParentValue, getOrdinalExp, getParentExp, getProperties, getTableAlias, getTableName, hasCaptionColumn, isAll, isParentChild, isUnique, lookupChild, lookupChild, lookupLevel
 
Methods inherited from class mondrian.olap.LevelBase
getDepth, getDescription, getDimension, getLevelType, getName, getQualifiedName, getUniqueName, isMeasure, setApproxRowCount
 
Methods inherited from class mondrian.olap.OlapElementBase
clone, computeHashCode, equals, equals, getCaption, hashCode, setCaption, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface mondrian.olap.OlapElement
getCaption
 

Field Detail

levelReader

protected RolapCubeLevel.LevelReader levelReader
Constructor Detail

RolapCubeLevel

public RolapCubeLevel(RolapLevel level,
                      RolapCubeHierarchy hierarchy)
Method Detail

init

void init(MondrianDef.CubeDimension xmlDimension)
Overrides:
init in class RolapLevel

setStarKeyColumn

public void setStarKeyColumn(RolapStar.Column column)

getStarKeyColumn

public RolapStar.Column getStarKeyColumn()
This is the RolapStar.Column that is related to this RolapCubeLevel

Returns:
the RolapStar.Column related to this RolapCubeLevel

getLevelReader

RolapCubeLevel.LevelReader getLevelReader()

getBaseStarKeyColumn

public RolapStar.Column getBaseStarKeyColumn(RolapCube baseCube)
this method returns the RolapStar.Column if non-virtual, if virtual, find the base cube level and return it's column

Parameters:
baseCube - the base cube for the specificed virtual level
Returns:
the RolapStar.Column related to this RolapCubeLevel

getCube

public RolapCube getCube()
Returns the (non virtual) cube this level belongs to.

Returns:
cube

getHierarchy

public final RolapCubeHierarchy getHierarchy()
Specified by:
getHierarchy in interface Level
Specified by:
getHierarchy in interface OlapElement
Overrides:
getHierarchy in class RolapLevel

getChildLevel

public final RolapCubeLevel getChildLevel()
Specified by:
getChildLevel in interface Level
Overrides:
getChildLevel in class LevelBase

getParentLevel

public RolapCubeLevel getParentLevel()
Specified by:
getParentLevel in interface Level
Overrides:
getParentLevel in class LevelBase

getRolapLevel

public RolapLevel getRolapLevel()

equals

public boolean equals(RolapCubeLevel level)

hasClosedPeer

boolean hasClosedPeer()
Description copied from class: RolapLevel
Returns true when the level is part of a parent/child hierarchy and has an equivalent closed level.

Overrides:
hasClosedPeer in class RolapLevel

getMemberFormatter

public MemberFormatter getMemberFormatter()
Description copied from class: LevelBase
Returns the object which is used to format members of this level.

Specified by:
getMemberFormatter in interface Level
Overrides:
getMemberFormatter in class LevelBase
Returns:
the MemberFormatter

SourceForge.net_Logo