Package mondrian.olap

Interface Member

All Superinterfaces:
Annotated, Comparable, OlapElement
All Known Subinterfaces:
RolapMeasure, RolapMember, RolapMemberInCube, RolapStoredMeasure
All Known Implementing Classes:
DelegatingRolapMember, MemberBase, RolapBaseCubeMeasure, RolapCalculatedMember, RolapCubeMember, RolapHierarchy.LimitedRollupMember, RolapHierarchy.RolapCalculatedMeasure, RolapMemberBase, RolapResult.CompoundSlicerRolapMember, RolapVirtualCubeMeasure, VisualTotalsFunDef.VisualTotalMember

public interface Member extends OlapElement, Comparable, Annotated
A Member is a 'point' on a dimension of a cube. Examples are [Time].[1997].[January], [Customer].[All Customers], [Customer].[USA].[CA], [Measures].[Unit Sales].

Every member belongs to a Level of a Hierarchy. Members except the root member have a parent, and members not at the leaf level have one or more children.

Measures are a special kind of member. They belong to their own dimension, [Measures].

There are also special members representing the 'All' value of a hierarchy, the null value, and the error value.

Members can have member properties. Their Level.getProperties() defines which are allowed.

Author:
jhyde, 2 March, 1999
  • Method Details

    • getParentMember

      Member getParentMember()
      Returns this member's parent, or null (not the 'null member', as returned by Hierarchy.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).

    • getLevel

      Level getLevel()
    • getHierarchy

      Hierarchy getHierarchy()
      Specified by:
      getHierarchy in interface OlapElement
    • getParentUniqueName

      String getParentUniqueName()
      Returns name of parent member, or empty string (not null) if we are the root.
    • getMemberType

      Member.MemberType getMemberType()
      Returns the type of member.
    • isParentChildLeaf

      boolean isParentChildLeaf()
      Returns:
      True when the member is a leaf member, meaning it has no children
    • isParentChildPhysicalMember

      boolean isParentChildPhysicalMember()
      Returns:
      True when the member is part of a Parent-Child hierarchy and it is a physical member. In a Parent Child Hierarchy without a closure table, each member needs to be treated as calculated. We need a way to distinguish between true calculated members and physical members that exist in the source data
    • setName

      void setName(String name)
      Only allowable if the member is part of the WITH clause of a query.
    • isAll

      boolean isAll()
      Returns whether this is the 'all' member.
    • isMeasure

      boolean isMeasure()
      Returns whether this is a member of the measures dimension.
    • isNull

      boolean isNull()
      Returns whether this is the 'null member'.
    • isChildOrEqualTo

      boolean isChildOrEqualTo(Member member)
      Returns whether member is equal to, a child, or a descendent of this Member.
    • isCalculated

      boolean isCalculated()
      Returns whether this member is computed using either a with member clause in an mdx query or a calculated member defined in cube.
    • isEvaluated

      boolean isEvaluated()
      Returns whether this member should be evaluated within the Evaluator.

      Normally isCalculated() and isEvaluated() should return the same value, but in situations where mondrian would like to treat the two concepts separately such in role based security, these values may differ.

      Returns:
      true if evaluated
    • getSolveOrder

      int getSolveOrder()
    • getExpression

      Exp getExpression()
    • getAncestorMembers

      List<Member> getAncestorMembers()
      Returns a list of the ancestor members of this member.
    • isCalculatedInQuery

      boolean isCalculatedInQuery()
      Returns whether this member is computed from a WITH MEMBER clause in an MDX query.
    • getPropertyValue

      Object getPropertyValue(String propertyName)
      Returns the value of the property named propertyName. Name match is case-sensitive.
    • getPropertyValue

      Object getPropertyValue(String propertyName, boolean matchCase)
      Returns the value of the property named propertyName, matching according to the required case-sensitivity.
    • getPropertyFormattedValue

      String getPropertyFormattedValue(String propertyName)
      Returns the formatted value of the property named propertyName.
    • setProperty

      void setProperty(String name, Object value)
      Sets a property of this member to a given value.
    • getProperties

      Property[] getProperties()
      Returns the definitions of the properties this member may have.
    • getOrdinal

      int getOrdinal()
      Returns the ordinal of the member.
    • getOrderKey

      Comparable getOrderKey()
      Returns the order key of the member (relative to its siblings); null if undefined or unavailable.
    • isHidden

      boolean isHidden()
      Returns whether this member is 'hidden', as per the rules which define a ragged hierarchy.
    • getDepth

      int getDepth()
      returns the depth of this member, which is not the level's depth in case of parent child dimensions
      Returns:
      depth
    • getDataMember

      Member getDataMember()
      Returns the system-generated data member that is associated with a nonleaf member of a dimension.

      Returns this member if this member is a leaf member, or if the nonleaf member does not have an associated data member.

    • isOnSameHierarchyChain

      boolean isOnSameHierarchyChain(Member otherMember)
      Returns true if this member is on the same hierarchy chain as otherMember.
      Parameters:
      otherMember -
      Returns: