Package org.jfree.report.modules.misc.tablemodel

## Class JoiningTableModel

- java.lang.Object
- - javax.swing.table.AbstractTableModel
  - - org.jfree.report.modules.misc.tablemodel.JoiningTableModel

- All Implemented Interfaces:
    `java.io.Serializable`, `javax.swing.table.TableModel`

      public class JoiningTableModel
      extends javax.swing.table.AbstractTableModel

  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static java.lang.String` | `TABLE_PREFIX_COLUMN` |

    - ### Fields inherited from class javax.swing.table.AbstractTableModel

      `listenerList`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `JoiningTableModel()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addTableModel​(java.lang.String prefix, javax.swing.table.TableModel model)` |
    `java.lang.Class` | `getColumnClass​(int columnIndex)` | Returns `Object.class` regardless of `columnIndex`.
    `int` | `getColumnCount()` | Returns the number of columns managed by the data source object.
    `java.lang.String` | `getColumnName​(int column)` | Returns a default name for the column using spreadsheet conventions: A, B, C, ...
    `int` | `getRowCount()` | Returns the number of records managed by the data source object.
    `javax.swing.table.TableModel` | `getTableModel​(int pos)` |
    `int` | `getTableModelCount()` |
    `java.lang.Object` | `getValueAt​(int rowIndex, int columnIndex)` | Returns an attribute value for the cell at columnIndex and rowIndex.
    `boolean` | `isCellEditable​(int rowIndex, int columnIndex)` | Returns false.
    `void` | `removeTableModel​(javax.swing.table.TableModel model)` |
    `protected void` | `updateData()` |
    `protected void` | `updateRowCount()` |
    `protected void` | `updateStructure()` |

    - ### Methods inherited from class javax.swing.table.AbstractTableModel

      `addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getListeners, getTableModelListeners, removeTableModelListener, setValueAt`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### TABLE_PREFIX_COLUMN

          public static final java.lang.String TABLE_PREFIX_COLUMN

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### JoiningTableModel

          public JoiningTableModel()

  - ### Method Detail

    - #### addTableModel

          public void addTableModel​(java.lang.String prefix,
                                    javax.swing.table.TableModel model)

    - #### removeTableModel

          public void removeTableModel​(javax.swing.table.TableModel model)

    - #### getTableModelCount

          public int getTableModelCount()

    - #### getTableModel

          public javax.swing.table.TableModel getTableModel​(int pos)

    - #### updateStructure

          protected void updateStructure()

    - #### updateRowCount

          protected void updateRowCount()

    - #### updateData

          protected void updateData()

    - #### getColumnClass

          public java.lang.Class getColumnClass​(int columnIndex)

      Returns `Object.class` regardless of `columnIndex`.
      Specified by:
        `getColumnClass` in interface `javax.swing.table.TableModel`
      Overrides:
        `getColumnClass` in class `javax.swing.table.AbstractTableModel`
      Parameters:
        `columnIndex` - the column being queried
      Returns:
        the Object.class

    - #### getColumnName

          public java.lang.String getColumnName​(int column)

      Returns a default name for the column using spreadsheet conventions: A, B, C, ... Z, AA, AB, etc. If `column` cannot be found, returns an empty string.
      Specified by:
        `getColumnName` in interface `javax.swing.table.TableModel`
      Overrides:
        `getColumnName` in class `javax.swing.table.AbstractTableModel`
      Parameters:
        `column` - the column being queried
      Returns:
        a string containing the default name of `column`

    - #### isCellEditable

          public final boolean isCellEditable​(int rowIndex,
                                              int columnIndex)

      Returns false. JFreeReport does not like changing cells.
      Specified by:
        `isCellEditable` in interface `javax.swing.table.TableModel`
      Overrides:
        `isCellEditable` in class `javax.swing.table.AbstractTableModel`
      Parameters:
        `rowIndex` - the row being queried
        `columnIndex` - the column being queried
      Returns:
        false

    - #### getColumnCount

          public int getColumnCount()

      Returns the number of columns managed by the data source object. A JTable uses this method to determine how many columns it should create and display on initialization.
      Returns:
        the number or columns in the model
      See Also:
        `getRowCount()`

    - #### getRowCount

          public int getRowCount()

      Returns the number of records managed by the data source object. A JTable uses this method to determine how many rows it should create and display. This method should be quick, as it is call by JTable quite frequently.
      Returns:
        the number or rows in the model
      See Also:
        `getColumnCount()`

    - #### getValueAt

          public java.lang.Object getValueAt​(int rowIndex,
                                             int columnIndex)

      Returns an attribute value for the cell at columnIndex and rowIndex.
      Parameters:
        `rowIndex` - the row whose value is to be looked up
        `columnIndex` - the column whose value is to be looked up
      Returns:
        the value Object at the specified cell