Class LevelType

java.lang.Object
org.olap4j.type.LevelType
All Implemented Interfaces:
Type

public class LevelType extends Object implements Type
The type of an expression which represents a level.
Since:
Feb 17, 2005
Author:
jhyde
  • Constructor Details

    • LevelType

      public LevelType(Dimension dimension, Hierarchy hierarchy, Level level)
      Creates a type representing a level.
      Parameters:
      dimension - Dimension which values of this type must belong to, or null if not known
      hierarchy - Hierarchy which values of this type must belong to, or null if not known
      level - Level which values of this type must belong to, or null if not known
  • Method Details

    • usesDimension

      public boolean usesDimension(Dimension dimension, boolean maybe)
      Description copied from interface: Type
      Returns whether this type contains a given dimension.

      For example:

      • DimensionType([Gender]) uses only the [Gender] dimension.
      • TupleType(MemberType([Gender]), MemberType([Store])) uses [Gender] and [Store] dimensions.

      The maybe parameter comes into play when the dimensional information is incomplete. For example, when applied to TupleType(MemberType(null), MemberType([Store])), usesDimension([Gender], false) returns true because it is possible that the expression returns a member of the [Gender] dimension.

      Specified by:
      usesDimension in interface Type
      Parameters:
      dimension - Dimension
      maybe - If true, returns true only if this type definitely uses the dimension
      Returns:
      whether this type definitely (or if maybe is true, possibly) uses the given dimension
    • getDimension

      public Dimension getDimension()
      Description copied from interface: Type
      Returns the dimension of this type, or null if not known.
      Specified by:
      getDimension in interface Type
      Returns:
      dimension of this type
    • getHierarchy

      public Hierarchy getHierarchy()
      Description copied from interface: Type
      Returns the hierarchy of this type. If not applicable, throws.
      Specified by:
      getHierarchy in interface Type
      Returns:
      hierarchy of this type
    • getLevel

      public Level getLevel()
      Description copied from interface: Type
      Returns the level of this type, or null if not known.
      Specified by:
      getLevel in interface Type
      Returns:
      level of this type
    • toString

      public String toString()
      Overrides:
      toString in class Object