mondrian.rolap.agg
Class Segment.Region

java.lang.Object
  extended by mondrian.rolap.agg.Segment.Region
Enclosing class:
Segment

static class Segment.Region
extends java.lang.Object

Definition of a region of values which are not in a segment.

A region is defined by a set of constraints, one for each column in the segment. A constraint may be LiteralStarPredicate(true), meaning that the column is unconstrained.

For example,

 segment (State={CA, OR, WA}, Gender=*)
 actual values {1997, 1998} * {CA, OR, WA} * {M, F} = 12 cells
 excluded region (Year=*, State={CA, OR}, Gender={F})
 excluded values {1997, 1998} * {CA, OR} * {F} = 4 cells

 Values:

     F     M
 CA  out   in
 OR  out   in
 WA  in    in
 

Note that the resulting segment is not a hypercube: it has a 'hole'. This is why regions are required.


Constructor Summary
Segment.Region(java.util.List<StarColumnPredicate> predicateList, java.util.List<StarPredicate> multiColumnPredicateList, int cellCount)
           
 
Method Summary
 void describe(java.lang.StringBuilder buf)
          Describes this Segment.
 boolean equals(java.lang.Object obj)
           
 int getCellCount()
           
 java.util.List<StarPredicate> getMultiColumnPredicates()
           
 java.util.List<StarColumnPredicate> getPredicates()
           
 int hashCode()
           
 boolean wouldContain(java.lang.Object[] keys)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Segment.Region

Segment.Region(java.util.List<StarColumnPredicate> predicateList,
               java.util.List<StarPredicate> multiColumnPredicateList,
               int cellCount)
Method Detail

getPredicates

public java.util.List<StarColumnPredicate> getPredicates()

getMultiColumnPredicates

public java.util.List<StarPredicate> getMultiColumnPredicates()

getCellCount

public int getCellCount()

wouldContain

public boolean wouldContain(java.lang.Object[] keys)

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

describe

public void describe(java.lang.StringBuilder buf)
Describes this Segment.

Parameters:
buf - Buffer to write to.

Get Mondrian at SourceForge.net. Fast, secure and free Open Source software downloads