Class SegmentAxis

java.lang.Object
mondrian.rolap.agg.SegmentAxis

public class SegmentAxis extends Object
Collection of values of one of the columns that parameterizes a Segment.
  • Constructor Details

    • SegmentAxis

      public SegmentAxis(StarColumnPredicate predicate, SortedSet<Comparable> keySet, boolean hasNull)
      Creates a SegmentAxis populated with a set of key values.
      Parameters:
      predicate - Predicate defining which keys should appear on axis. (If a key passes the predicate but is not in the list, every cell with that key is assumed to have a null value.)
      keySet - Set of distinct key values, sorted
      hasNull - Whether the axis contains the null value, in addition to the values in valueSet
  • Method Details

    • wouldContain

      public final boolean wouldContain(Object key)
      Returns whether this axis contains a given key, or would contain it if it existed.

      For example, if this axis is unconstrained, then this method returns true for any value.

      Parameters:
      key - Key
      Returns:
      Whether this axis would contain key
    • getMatchCount

      public int getMatchCount(StarColumnPredicate predicate)
      Returns how many of this SegmentAxis's keys match a given constraint.
      Parameters:
      predicate - Predicate
      Returns:
      How many keys match constraint
    • getValuesAndIndicator

      public Pair<SortedSet<Comparable>,Boolean> getValuesAndIndicator()