Class RolapLevel

All Implemented Interfaces:
Annotated, Level, OlapElement
Direct Known Subclasses:
RolapCubeLevel

public class RolapLevel extends LevelBase
RolapLevel implements Level for a ROLAP database.
Since:
10 August, 2001
Author:
jhyde
  • Field Details

    • keyExp

      protected MondrianDef.Expression keyExp
      The column or expression which yields the level's key.
    • ordinalExp

      protected MondrianDef.Expression ordinalExp
      The column or expression which yields the level's ordinal.
    • captionExp

      protected MondrianDef.Expression captionExp
      The column or expression which yields the level members' caption.
    • properties

      protected mondrian.rolap.RolapProperty[] properties
    • nameExp

      protected MondrianDef.Expression nameExp
      Ths expression which gives the name of members of this level. If null, members are named using the key expression.
    • parentExp

      protected MondrianDef.Expression parentExp
      The expression which joins to the parent member in a parent-child hierarchy, or null if this is a regular hierarchy.
    • xmlClosure

      protected final MondrianDef.Closure xmlClosure
  • Method Details

    • getHierarchy

      public RolapHierarchy getHierarchy()
      Specified by:
      getHierarchy in interface Level
      Specified by:
      getHierarchy in interface OlapElement
      Overrides:
      getHierarchy in class LevelBase
    • getAnnotationMap

      public Map<String,Annotation> getAnnotationMap()
      Description copied from interface: Annotated
      Returns a list of annotations.

      The map may be empty, never null.

      Returns:
      Map from annotation name to annotations.
    • getLogger

      protected org.apache.logging.log4j.Logger getLogger()
      Specified by:
      getLogger in class OlapElementBase
    • getKeyExp

      public MondrianDef.Expression getKeyExp()
    • getOrdinalExp

      public MondrianDef.Expression getOrdinalExp()
    • getCaptionExp

      public MondrianDef.Expression getCaptionExp()
    • hasCaptionColumn

      public boolean hasCaptionColumn()
    • hasOrdinalExp

      public boolean hasOrdinalExp()
    • isUnique

      public final boolean isUnique()
    • getDatatype

      public final Dialect.Datatype getDatatype()
    • isParentChild

      public boolean isParentChild()
      Returns whether this level is parent-child.
    • getNameExp

      public MondrianDef.Expression getNameExp()
    • isAll

      public final boolean isAll()
      Specified by:
      isAll in interface Level
      Specified by:
      isAll in class LevelBase
    • areMembersUnique

      public boolean areMembersUnique()
    • getTableAlias

      public String getTableAlias()
    • getProperties

      public mondrian.rolap.RolapProperty[] getProperties()
      Description copied from interface: Level
      Returns properties defined against this level.
    • getInheritedProperties

      public Property[] getInheritedProperties()
      Description copied from interface: Level
      Returns properties defined against this level and parent levels.
    • getApproxRowCount

      public int getApproxRowCount()
      Description copied from interface: Level
      Returns the approximate number of members in this level, or Integer.MIN_VALUE if no approximation is known.
    • getInternalType

      public SqlStatement.Type getInternalType()
    • lookupChild

      public OlapElement lookupChild(SchemaReader schemaReader, Id.Segment name)
    • lookupChild

      public OlapElement lookupChild(SchemaReader schemaReader, Id.Segment name, MatchType matchType)
      Description copied from interface: OlapElement
      Looks up a child element, returning null if it does not exist.
      Specified by:
      lookupChild in interface OlapElement
      Overrides:
      lookupChild in class LevelBase
    • isSimple

      public boolean isSimple()
      Indicates that level is not ragged and not a parent/child level.
    • getClosedPeer

      public RolapLevel getClosedPeer()
    • lookupLevel

      public static RolapLevel lookupLevel(RolapLevel[] levels, String levelName)