Ontimize 5.2072EN

com.ontimize.gui.table
Class ExtendedTableModel

java.lang.Object
  extended byjavax.swing.table.AbstractTableModel
      extended bycom.ontimize.gui.table.ExtendedTableModel
All Implemented Interfaces:
java.io.Serializable, javax.swing.table.TableModel

public class ExtendedTableModel
extends javax.swing.table.AbstractTableModel

See Also:
Serialized Form

Field Summary
static java.lang.String ASTERISK
           
static java.util.regex.Pattern availableCalculatedColumnNameCharacterPattern
           
static java.lang.String AVG_OPERATION
           
protected  java.util.Vector calculatedColumnsExpressions
           
protected  java.util.Vector calculatedColumnsNames
           
protected  java.util.Vector colsReqCalc
           
protected  java.util.Vector columnNames
           
protected  java.lang.Class[] columnsClass
           
protected  int columnsNumber
           
protected  java.util.Vector columnTexts
           
static java.lang.String CONCAT_OPERATION
           
protected  java.util.Hashtable data
          Hashtable with the data model values
protected  boolean editable
           
protected  java.util.Vector editableColumns
           
static java.lang.String MAX_OPERATION
           
static java.lang.String MIN_OPERATION
           
protected  java.util.Vector parsers
           
static java.lang.String ROW_NUMBERS_COLUMN
          Name of the column with the rows number
protected  java.util.Vector rowNumbers
           
protected  int rowsNumber
           
static java.lang.String SUM_OPERATION
           
protected  javax.swing.table.TableCellRenderer sumCellRenderer
           
protected  javax.swing.table.TableCellRenderer sumCurrencyCellRenderer
           
static java.lang.String TOTAL
           
 
Fields inherited from class javax.swing.table.AbstractTableModel
listenerList
 
Constructor Summary
ExtendedTableModel(java.util.Hashtable tableData, java.util.Vector columnNames, java.util.Hashtable calculatedColumns, boolean editable)
           
ExtendedTableModel(java.util.Hashtable tableData, java.util.Vector columnNames, java.util.Hashtable calculatedColumns, boolean editable, java.util.Vector colsReqCalc)
           
ExtendedTableModel(java.util.Hashtable tableData, java.util.Vector columnNames, java.util.Vector columnTexts, java.util.Hashtable calculatedColumns)
          Deprecated.  
ExtendedTableModel(java.util.Hashtable tableData, java.util.Vector columNames, java.util.Vector columnTexts, java.util.Hashtable calculatedColumns, boolean editable)
          Deprecated.  
ExtendedTableModel(java.util.Hashtable tableData, java.util.Vector columnNames, java.util.Vector columnTexts, java.util.Hashtable calculatedColumns, boolean editable, java.util.Vector colsReqCalc)
           
 
Method Summary
 void addCalculatedColumn(java.lang.String col, java.lang.String expression)
           
 void addColumn(java.lang.String col)
           
protected  void addInnerRow(java.util.Hashtable rowData)
           
 void addRow(java.util.Hashtable rowData)
           
 void addRow(int index, java.util.Hashtable rowData)
           
 void addRows(int[] pos, java.util.Vector rowsData)
           
 void addRows(java.util.Vector rowValues)
           
 void deleteCalculatedColumn(java.lang.String col)
           
 void deleteColumn(java.lang.String col)
           
protected  void deleteInnerRow(int row)
           
 void deleteRow(int row)
           
 void deleteRows(int[] rows)
           
static boolean expressionContainsColName(java.lang.String colName, java.lang.String expression, java.util.regex.Pattern validCharactersInColumnName)
           
 java.lang.String getCalculatedColumnExpression(java.lang.String col)
           
 java.util.Hashtable getCalculatedColumns()
           
 java.util.Vector getCalculatedColumnsName()
           
 java.util.Hashtable getCalculatedRowData(int rowIndex)
           
 java.lang.Object getCalculatedValue(int column, java.util.Hashtable rowValues)
           
 java.lang.Class getColumnClass(int column)
          Overwrite the method to set the appropriate renderer to the supported data types.
protected  java.lang.String getColumnConcat(java.lang.Object columnIdentifier)
          Gets the maximum or minimum value for a specified column.
 int getColumnCount()
           
 java.lang.String getColumnIdentifier(int index)
           
 int getColumnIndex(java.lang.Object col)
           
protected  java.lang.Number getColumnMaximumMinimum(java.lang.Object columnIdentifier, boolean max)
          Gets the maximum or minimum value for a specified column.
 java.lang.String getColumnName(int index)
           
 java.lang.Object getColumnOperation(java.lang.String columnIdentifier, java.lang.String operation)
           
protected  java.lang.Object getColumnSumAverage(java.lang.Object columnIdentifier, boolean average)
          Sums all the values for a specified column.
 java.util.Hashtable getData()
           
 java.util.Vector getRequiredColumnsToCalculatedColumns()
           
 int getRowCount()
           
 java.util.Hashtable getRowData(int row)
           
 java.util.Hashtable getRowData(int[] rows)
           
 java.util.Hashtable getRowDataForKeys(java.util.List keys, java.util.Hashtable keysValues)
           
protected  java.util.Hashtable getRowValuesForExpression(java.lang.String expression, int row)
           
 javax.swing.table.TableCellRenderer getSumCellRenderer(boolean currency, java.util.ResourceBundle bundle)
           
protected  java.lang.Object getValue(int row, int column)
           
 java.lang.Object getValueAt(int row, int column)
           
 boolean isCellEditable(int row, int column)
           
 void removeEditableColumn(java.lang.Object id)
           
 void setCalculatedColumnExpression(java.lang.String col, java.lang.String expression)
           
 void setData(java.util.Hashtable data)
           
 void setEditableColumn(java.lang.Object id)
           
 void setEditableColumn(java.lang.Object id, boolean editable)
           
 void setValueAt(java.lang.Object value, int row, int column)
           
protected  void updateColumnCount()
           
 void updateRowData(java.util.Hashtable rowData, java.util.Hashtable keysValues)
           
 void updateRowData(java.util.Hashtable rowData, java.util.List columns, java.util.Hashtable keysValues)
           
 void updateRowData(java.util.Hashtable rowData, java.util.Vector keys)
           
 
Methods inherited from class javax.swing.table.AbstractTableModel
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getListeners, getTableModelListeners, removeTableModelListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

availableCalculatedColumnNameCharacterPattern

public static java.util.regex.Pattern availableCalculatedColumnNameCharacterPattern

ASTERISK

public static java.lang.String ASTERISK

TOTAL

public static java.lang.String TOTAL

sumCurrencyCellRenderer

protected javax.swing.table.TableCellRenderer sumCurrencyCellRenderer

sumCellRenderer

protected javax.swing.table.TableCellRenderer sumCellRenderer

columnsClass

protected java.lang.Class[] columnsClass

rowNumbers

protected java.util.Vector rowNumbers

data

protected java.util.Hashtable data
Hashtable with the data model values


columnNames

protected java.util.Vector columnNames

columnTexts

protected java.util.Vector columnTexts

rowsNumber

protected int rowsNumber

columnsNumber

protected int columnsNumber

editableColumns

protected java.util.Vector editableColumns

calculatedColumnsNames

protected java.util.Vector calculatedColumnsNames

calculatedColumnsExpressions

protected java.util.Vector calculatedColumnsExpressions

colsReqCalc

protected java.util.Vector colsReqCalc

parsers

protected java.util.Vector parsers

editable

protected boolean editable

ROW_NUMBERS_COLUMN

public static final java.lang.String ROW_NUMBERS_COLUMN
Name of the column with the rows number

See Also:
Constant Field Values

SUM_OPERATION

public static final java.lang.String SUM_OPERATION
See Also:
Constant Field Values

AVG_OPERATION

public static final java.lang.String AVG_OPERATION
See Also:
Constant Field Values

MAX_OPERATION

public static final java.lang.String MAX_OPERATION
See Also:
Constant Field Values

MIN_OPERATION

public static final java.lang.String MIN_OPERATION
See Also:
Constant Field Values

CONCAT_OPERATION

public static final java.lang.String CONCAT_OPERATION
See Also:
Constant Field Values
Constructor Detail

ExtendedTableModel

public ExtendedTableModel(java.util.Hashtable tableData,
                          java.util.Vector columnNames,
                          java.util.Vector columnTexts,
                          java.util.Hashtable calculatedColumns)
Deprecated.  


ExtendedTableModel

public ExtendedTableModel(java.util.Hashtable tableData,
                          java.util.Vector columNames,
                          java.util.Vector columnTexts,
                          java.util.Hashtable calculatedColumns,
                          boolean editable)
Deprecated.  


ExtendedTableModel

public ExtendedTableModel(java.util.Hashtable tableData,
                          java.util.Vector columnNames,
                          java.util.Hashtable calculatedColumns,
                          boolean editable)

ExtendedTableModel

public ExtendedTableModel(java.util.Hashtable tableData,
                          java.util.Vector columnNames,
                          java.util.Hashtable calculatedColumns,
                          boolean editable,
                          java.util.Vector colsReqCalc)

ExtendedTableModel

public ExtendedTableModel(java.util.Hashtable tableData,
                          java.util.Vector columnNames,
                          java.util.Vector columnTexts,
                          java.util.Hashtable calculatedColumns,
                          boolean editable,
                          java.util.Vector colsReqCalc)
Method Detail

getRowCount

public int getRowCount()

getData

public java.util.Hashtable getData()

deleteInnerRow

protected void deleteInnerRow(int row)

deleteRows

public void deleteRows(int[] rows)

deleteRow

public void deleteRow(int row)

getColumnCount

public int getColumnCount()

updateColumnCount

protected void updateColumnCount()

getValueAt

public java.lang.Object getValueAt(int row,
                                   int column)

getValue

protected java.lang.Object getValue(int row,
                                    int column)

getRowValuesForExpression

protected java.util.Hashtable getRowValuesForExpression(java.lang.String expression,
                                                        int row)

getColumnName

public java.lang.String getColumnName(int index)

getColumnIdentifier

public java.lang.String getColumnIdentifier(int index)

getColumnClass

public java.lang.Class getColumnClass(int column)
Overwrite the method to set the appropriate renderer to the supported data types. DefaultCellRenderer is used for all the not supported data types.


setEditableColumn

public void setEditableColumn(java.lang.Object id)

setEditableColumn

public void setEditableColumn(java.lang.Object id,
                              boolean editable)

removeEditableColumn

public void removeEditableColumn(java.lang.Object id)

isCellEditable

public boolean isCellEditable(int row,
                              int column)

setValueAt

public void setValueAt(java.lang.Object value,
                       int row,
                       int column)

getRowData

public java.util.Hashtable getRowData(int[] rows)

getRowDataForKeys

public java.util.Hashtable getRowDataForKeys(java.util.List keys,
                                             java.util.Hashtable keysValues)

getRowData

public java.util.Hashtable getRowData(int row)

getCalculatedRowData

public java.util.Hashtable getCalculatedRowData(int rowIndex)

updateRowData

public void updateRowData(java.util.Hashtable rowData,
                          java.util.Hashtable keysValues)

updateRowData

public void updateRowData(java.util.Hashtable rowData,
                          java.util.List columns,
                          java.util.Hashtable keysValues)

updateRowData

public void updateRowData(java.util.Hashtable rowData,
                          java.util.Vector keys)

addRow

public void addRow(java.util.Hashtable rowData)

addInnerRow

protected void addInnerRow(java.util.Hashtable rowData)

addRows

public void addRows(java.util.Vector rowValues)
Parameters:
rowValues -

addRows

public void addRows(int[] pos,
                    java.util.Vector rowsData)

addRow

public void addRow(int index,
                   java.util.Hashtable rowData)

setData

public void setData(java.util.Hashtable data)

getSumCellRenderer

public javax.swing.table.TableCellRenderer getSumCellRenderer(boolean currency,
                                                              java.util.ResourceBundle bundle)

addColumn

public void addColumn(java.lang.String col)

addCalculatedColumn

public void addCalculatedColumn(java.lang.String col,
                                java.lang.String expression)

deleteColumn

public void deleteColumn(java.lang.String col)

deleteCalculatedColumn

public void deleteCalculatedColumn(java.lang.String col)

getCalculatedColumns

public java.util.Hashtable getCalculatedColumns()

getCalculatedColumnsName

public java.util.Vector getCalculatedColumnsName()

getRequiredColumnsToCalculatedColumns

public java.util.Vector getRequiredColumnsToCalculatedColumns()

getCalculatedColumnExpression

public java.lang.String getCalculatedColumnExpression(java.lang.String col)

setCalculatedColumnExpression

public void setCalculatedColumnExpression(java.lang.String col,
                                          java.lang.String expression)

getCalculatedValue

public java.lang.Object getCalculatedValue(int column,
                                           java.util.Hashtable rowValues)

expressionContainsColName

public static boolean expressionContainsColName(java.lang.String colName,
                                                java.lang.String expression,
                                                java.util.regex.Pattern validCharactersInColumnName)

getColumnOperation

public java.lang.Object getColumnOperation(java.lang.String columnIdentifier,
                                           java.lang.String operation)

getColumnIndex

public int getColumnIndex(java.lang.Object col)

getColumnSumAverage

protected java.lang.Object getColumnSumAverage(java.lang.Object columnIdentifier,
                                               boolean average)
Sums all the values for a specified column.

Parameters:
columnIdentifier -
Returns:
the sum of the values, or null in case the column does not exist

getColumnMaximumMinimum

protected java.lang.Number getColumnMaximumMinimum(java.lang.Object columnIdentifier,
                                                   boolean max)
Gets the maximum or minimum value for a specified column.


getColumnConcat

protected java.lang.String getColumnConcat(java.lang.Object columnIdentifier)
Gets the maximum or minimum value for a specified column.


Ontimize