org.pentaho.reporting.engine.classic.core.states.crosstab
Class OrderedMergeCrosstabSpecification
java.lang.Object
org.pentaho.reporting.engine.classic.core.states.crosstab.OrderedMergeCrosstabSpecification
- All Implemented Interfaces:
- Serializable, CrosstabSpecification
public class OrderedMergeCrosstabSpecification
- extends Object
- implements CrosstabSpecification
Computed structural data of a crosstab. It basically contains the full dataset of the column axis, which then allows
us to inject artificial rows into the dataset.
We have the assumption, that the data is already pre-sorted in some way and that all rows are given in that order. As
the order can be arbitrary, we do not attempt to sort or assume that items are comparable. This model is only
guaranteed to work well, if the data set is properly normalized. A sane MDX datasource is guaranteed to return such a
normalized dataset.
- Author:
- Thomas Morgner
- See Also:
- Serialized Form
OrderedMergeCrosstabSpecification
public OrderedMergeCrosstabSpecification(ReportStateKey key,
String[] columnSet)
indexOf
public int indexOf(int start,
Object[] key)
- Specified by:
indexOf
in interface CrosstabSpecification
getColumnNames
public String[] getColumnNames()
- Specified by:
getColumnNames
in interface CrosstabSpecification
getKey
public ReportStateKey getKey()
- Specified by:
getKey
in interface CrosstabSpecification
startRow
public void startRow()
- Specified by:
startRow
in interface CrosstabSpecification
endRow
public void endRow()
- Specified by:
endRow
in interface CrosstabSpecification
add
public void add(DataRow dataRow)
- Specified by:
add
in interface CrosstabSpecification
size
public int size()
- Description copied from interface:
CrosstabSpecification
- The number of columns encountered.
- Specified by:
size
in interface CrosstabSpecification
- Returns:
getKeyAt
public Object[] getKeyAt(int column)
- Specified by:
getKeyAt
in interface CrosstabSpecification