mondrian.rolap
Class RolapAxis

java.lang.Object
  extended by mondrian.rolap.RolapAxis
All Implemented Interfaces:
Axis
Direct Known Subclasses:
RolapAxis.MemberArrayIterable, RolapAxis.MemberArrayList, RolapAxis.MemberIterable, RolapAxis.MemberList, RolapAxis.NoPosition, RolapAxis.PositionList, RolapAxis.SingleEmptyPosition, RolapAxis.Wrapper

public abstract class RolapAxis
extends Object
implements Axis

Derived classes of RolapAxis implements the Axis interface which are specializations based upon the number of Positions, how each Position's Members are orgainized and whether the Members/Member[]s are in a List or an Iterable.

Author:
Richard M. Emberson
 

Nested Class Summary
static class RolapAxis.MemberArrayIterable
          A MemberArrayIterable takes an Iterable<Member[]> where each Position has an array of Members from the corresponding location in the iterator.
static class RolapAxis.MemberArrayList
          A MemberArrayList takes a List<Member[]> where each Position has the Member's from the corresponding location in the list.
static class RolapAxis.MemberIterable
          A MemberIterable takes an Iterable<Member> where each Position has a single Member from the corresponding location in the iterator.
static class RolapAxis.MemberList
          A MemberList takes a List<Member> where each Position has a single Member from the corresponding location in the list.
static class RolapAxis.NoPosition
          The NoPosition Axis implementation is an Axis that has no Positions, the size of the list of positions is zero.
protected static class RolapAxis.PositionBase
          The PositionBase is an abstract implementation of the Position interface and provides both Iterator<Member> and ListIterator<Member> implementations.
protected static class RolapAxis.PositionIterBase
           
static class RolapAxis.PositionList
          The PositionList Axis implementation takes a List of positions.
protected static class RolapAxis.PositionListBase
          The PositionListBase is an abstract implementation of the List<Position> interface and provides both Iterator<Position> and ListIterator<Position> implementations.
protected static class RolapAxis.PositionListUnsupported
           
protected static class RolapAxis.PositionUnsupported
          A List<Member> for which all methods throw the UnsupportedOperationException exception when invoked.
static class RolapAxis.SingleEmptyPosition
          A SingleEmptyPosition has a single Position and the Position has no Members.
static class RolapAxis.Wrapper
          A Wrapper has many uses.
 
Constructor Summary
protected RolapAxis()
           
 
Method Summary
abstract  List<Position> getPositions()
           
static String toString(Axis axis)
           
static String toString(List<Position> pl)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RolapAxis

protected RolapAxis()
Method Detail

toString

public static String toString(Axis axis)

toString

public static String toString(List<Position> pl)

getPositions

public abstract List<Position> getPositions()
Specified by:
getPositions in interface Axis

SourceForge.net_Logo