org.openxava.tab.impl
Class XTableModelDecoratorBase

java.lang.Object
  extended by org.openxava.tab.impl.XTableModelDecoratorBase
All Implemented Interfaces:
java.io.Serializable, javax.swing.table.TableModel, IObjectTableModel, IRefreshTableModel, IXTableModel
Direct Known Subclasses:
HiddenXTableModel, SelectedRowsXTableModel

public class XTableModelDecoratorBase
extends java.lang.Object
implements IXTableModel, java.io.Serializable

Base class to create IXTableModel decorators.

A decorator as describe in GoF book. By default simply redirect the call to IXTableModel original.

Author:
Javier Paniza
See Also:
Serialized Form

Constructor Summary
XTableModelDecoratorBase(IXTableModel toDecorate)
           
 
Method Summary
 void addTableModelListener(javax.swing.event.TableModelListener l)
           
 java.lang.Class getColumnClass(int columnIndex)
           
 int getColumnCount()
           
 java.lang.String getColumnName(int columnIndex)
           
 java.lang.Object getObjectAt(int rowIndex)
          Return the object associated to indicated row.
 int getRowCount()
           
 java.lang.Number getSum(java.lang.String property)
           
 int getTotalSize()
          Total count of objects represented by this table model.
 java.lang.Object getValueAt(int rowIndex, int columnIndex)
           
 boolean isCellEditable(int rowIndex, int columnIndex)
           
 void refresh()
          Refresh data from datasource.
 void removeAllRows()
           
 void removeTableModelListener(javax.swing.event.TableModelListener l)
           
 void setValueAt(java.lang.Object aValue, int rowIndex, int columnIndex)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

XTableModelDecoratorBase

public XTableModelDecoratorBase(IXTableModel toDecorate)
Parameters:
toDecorate - IXTableModel to decorate.
Throws:
java.lang.IllegalArgumentException - If toDecorate == null.
Method Detail

addTableModelListener

public void addTableModelListener(javax.swing.event.TableModelListener l)
Specified by:
addTableModelListener in interface javax.swing.table.TableModel

getColumnClass

public java.lang.Class getColumnClass(int columnIndex)
Specified by:
getColumnClass in interface javax.swing.table.TableModel

getColumnCount

public int getColumnCount()
Specified by:
getColumnCount in interface javax.swing.table.TableModel

getColumnName

public java.lang.String getColumnName(int columnIndex)
Specified by:
getColumnName in interface javax.swing.table.TableModel

getObjectAt

public java.lang.Object getObjectAt(int rowIndex)
                             throws FinderException
Description copied from interface: IObjectTableModel
Return the object associated to indicated row.

Specified by:
getObjectAt in interface IObjectTableModel
Specified by:
getObjectAt in interface IXTableModel
Throws:
FinderException

getRowCount

public int getRowCount()
Specified by:
getRowCount in interface javax.swing.table.TableModel

getValueAt

public java.lang.Object getValueAt(int rowIndex,
                                   int columnIndex)
Specified by:
getValueAt in interface javax.swing.table.TableModel

isCellEditable

public boolean isCellEditable(int rowIndex,
                              int columnIndex)
Specified by:
isCellEditable in interface javax.swing.table.TableModel

refresh

public void refresh()
             throws TabException
Description copied from interface: IRefreshTableModel
Refresh data from datasource.

Specified by:
refresh in interface IRefreshTableModel
Specified by:
refresh in interface IXTableModel
Throws:
TabException

removeAllRows

public void removeAllRows()
Specified by:
removeAllRows in interface IXTableModel

removeTableModelListener

public void removeTableModelListener(javax.swing.event.TableModelListener l)
Specified by:
removeTableModelListener in interface javax.swing.table.TableModel

setValueAt

public void setValueAt(java.lang.Object aValue,
                       int rowIndex,
                       int columnIndex)
Specified by:
setValueAt in interface javax.swing.table.TableModel

getTotalSize

public int getTotalSize()
                 throws java.rmi.RemoteException
Description copied from interface: IXTableModel
Total count of objects represented by this table model.

Cantidad de objetos total representados por el table model.

getRowCount() in another side, return the loaded objects count, not total.

Specified by:
getTotalSize in interface IXTableModel
Throws:
java.rmi.RemoteException

getSum

public java.lang.Number getSum(java.lang.String property)
                        throws java.rmi.RemoteException
Specified by:
getSum in interface IXTableModel
Throws:
java.rmi.RemoteException