org.pentaho.reporting.engine.classic.core.cache
Class IndexedTableModel

java.lang.Object
  extended by org.pentaho.reporting.engine.classic.core.cache.IndexedTableModel
All Implemented Interfaces:
TableModel, MetaTableModel, CloseableTableModel
Direct Known Subclasses:
IndexedMetaTableModel

public class IndexedTableModel
extends Object
implements CloseableTableModel, MetaTableModel

Todo: Document me!

Date: 15.12.2009 Time: 12:05:09

Author:
Thomas Morgner.

Constructor Summary
IndexedTableModel(TableModel backend)
           
 
Method Summary
 void addTableModelListener(TableModelListener l)
           
 void close()
          If this model has disposeable resources assigned, close them or dispose them.
 DataAttributes getCellDataAttributes(int row, int column)
          Returns the meta-attribute as Java-Object.
 DataAttributes getColumnAttributes(int column)
          Returns the column-level attributes for the given column.
 Class getColumnClass(int columnIndex)
           
 int getColumnCount()
           
 String getColumnName(int columnIndex)
           
 int getRowCount()
           
 DataAttributes getTableAttributes()
          Returns table-wide attributes.
 Object getValueAt(int rowIndex, int columnIndex)
           
 boolean isCellDataAttributesSupported()
          Checks, whether cell-data attributes are supported by this tablemodel implementation.
 boolean isCellEditable(int rowIndex, int columnIndex)
           
 void removeTableModelListener(TableModelListener l)
           
 void setValueAt(Object aValue, int rowIndex, int columnIndex)
           
 String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

IndexedTableModel

public IndexedTableModel(TableModel backend)
Method Detail

close

public void close()
If this model has disposeable resources assigned, close them or dispose them.

Specified by:
close in interface CloseableTableModel

getRowCount

public int getRowCount()
Specified by:
getRowCount in interface TableModel

getColumnCount

public int getColumnCount()
Specified by:
getColumnCount in interface TableModel

getColumnName

public String getColumnName(int columnIndex)
Specified by:
getColumnName in interface TableModel

getColumnClass

public Class getColumnClass(int columnIndex)
Specified by:
getColumnClass in interface TableModel

isCellEditable

public boolean isCellEditable(int rowIndex,
                              int columnIndex)
Specified by:
isCellEditable in interface TableModel

getValueAt

public Object getValueAt(int rowIndex,
                         int columnIndex)
Specified by:
getValueAt in interface TableModel

setValueAt

public void setValueAt(Object aValue,
                       int rowIndex,
                       int columnIndex)
Specified by:
setValueAt in interface TableModel

addTableModelListener

public void addTableModelListener(TableModelListener l)
Specified by:
addTableModelListener in interface TableModel

removeTableModelListener

public void removeTableModelListener(TableModelListener l)
Specified by:
removeTableModelListener in interface TableModel

getCellDataAttributes

public DataAttributes getCellDataAttributes(int row,
                                            int column)
Returns the meta-attribute as Java-Object. The object type that is expected by the caller is defined in the TableMetaData property set. It is the responsibility of the implementor to map the native meta-data model into a model suitable for reporting.

Be aware that cell-level attributes do not make it into the designtime dataschema, as this dataschema only looks at the structural metadata available and does not contain any data references.

Specified by:
getCellDataAttributes in interface MetaTableModel
Parameters:
row - the row of the cell for which the meta-data is queried.
column - the index of the column for which the meta-data is queried.
Returns:
the meta-data object.

isCellDataAttributesSupported

public boolean isCellDataAttributesSupported()
Checks, whether cell-data attributes are supported by this tablemodel implementation.

Specified by:
isCellDataAttributesSupported in interface MetaTableModel
Returns:
true, if the model supports cell-level attributes, false otherwise.

getColumnAttributes

public DataAttributes getColumnAttributes(int column)
Returns the column-level attributes for the given column.

Specified by:
getColumnAttributes in interface MetaTableModel
Parameters:
column - the column.
Returns:
data-attributes, never null.

getTableAttributes

public DataAttributes getTableAttributes()
Returns table-wide attributes. This usually contain hints about the data-source used to query the data as well as hints on the sort-order of the data.

Specified by:
getTableAttributes in interface MetaTableModel
Returns:
the table-attributes, never null.

toString

public String toString()
Overrides:
toString in class Object