Package org.jfree.report.data

## Class GlobalView

- java.lang.Object
- - org.jfree.report.data.GlobalView

- All Implemented Interfaces:
    `DataRow`, `DataSet`

      public final class GlobalView
      extends java.lang.Object
      implements DataRow

  The global view holds all *named* data columns. Expressions which have no name will not appear here. There is a slot for each name - if expressions share the same name, the last name wins.

  This acts as some kind of global variables heap - which allows named functions to export their values to a global space.

  This datarow is optimized for named access - the sequential access is only generated when absolutly needed.
  Author:
    Thomas Morgner

- - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `GlobalView` | `advance()` |
    `static GlobalView` | `createView()` |
    `GlobalView` | `derive()` |
    `java.lang.Object` | `get​(int col)` | Returns the value of the expression or column in the tablemodel using the given column number as index.
    `java.lang.Object` | `get​(java.lang.String col)` | Returns the value of the function, expression or column using its specific name.
    `int` | `getColumnCount()` | Returns the number of columns, expressions and functions and marked ReportProperties in the report.
    `java.lang.String` | `getColumnName​(int col)` | Returns the name of the column, expression or function.
    `DataFlags` | `getFlags​(int col)` | Queries lowlevel meta-data for the current value of the specified column.
    `DataFlags` | `getFlags​(java.lang.String col)` | Queries lowlevel meta-data for the current value of the specified column.
    `void` | `putField​(java.lang.String name, java.lang.Object value, boolean update)` | This adds the expression to the data-row and queries the expression for the first time.
    `void` | `removeColumn​(java.lang.String name)` | Note: Dont remove the column.

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

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

- - ### Method Detail

    - #### createView

          public static GlobalView createView()

    - #### putField

          public void putField​(java.lang.String name,
                               java.lang.Object value,
                               boolean update)
                        throws DataSourceException

      This adds the expression to the data-row and queries the expression for the first time.
      Parameters:
        `name` - the name of the field (cannot be null)
        `value` - the value of that field (may be null)
      Throws:
        `DataSourceException`

    - #### get

          public java.lang.Object get​(int col)
                               throws DataSourceException

      Returns the value of the expression or column in the tablemodel using the given column number as index. For functions and expressions, the `getValue()` method is called and for columns from the tablemodel the tablemodel method `getValueAt(row, column)` gets called.
      Specified by:
        `get` in interface `DataRow`
      Specified by:
        `get` in interface `DataSet`
      Parameters:
        `col` - the item index.
      Returns:
        the value.
      Throws:
        `java.lang.IllegalStateException` - if the datarow detected a deadlock.
        `DataSourceException` - if an error occured.

    - #### get

          public java.lang.Object get​(java.lang.String col)
                               throws DataSourceException

      Returns the value of the function, expression or column using its specific name. The given name is translated into a valid column number and the the column is queried. For functions and expressions, the `getValue()` method is called and for columns from the tablemodel the tablemodel method `getValueAt(row, column)` gets called.
      Specified by:
        `get` in interface `DataRow`
      Parameters:
        `col` - the item index.
      Returns:
        the value.
      Throws:
        `java.lang.IllegalStateException` - if the datarow detected a deadlock.
        `DataSourceException` - if an error occured.

    - #### getColumnName

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

      Returns the name of the column, expression or function. For columns from the tablemodel, the tablemodels `getColumnName` method is called. For functions, expressions and report properties the assigned name is returned.
      Specified by:
        `getColumnName` in interface `DataRow`
      Specified by:
        `getColumnName` in interface `DataSet`
      Parameters:
        `col` - the item index.
      Returns:
        the name.

    - #### getColumnCount

          public int getColumnCount()

      Returns the number of columns, expressions and functions and marked ReportProperties in the report.
      Specified by:
        `getColumnCount` in interface `DataRow`
      Specified by:
        `getColumnCount` in interface `DataSet`
      Returns:
        the item count.

    - #### getFlags

          public DataFlags getFlags​(java.lang.String col)

      Description copied from interface: `DataRow`
      Queries lowlevel meta-data for the current value of the specified column.
      Specified by:
        `getFlags` in interface `DataRow`
      Parameters:
        `col` - the colum for which to query the meta-data flags
      Returns:
        the dataflag collection for the value in the named column

    - #### getFlags

          public DataFlags getFlags​(int col)

      Description copied from interface: `DataRow`
      Queries lowlevel meta-data for the current value of the specified column.
      Specified by:
        `getFlags` in interface `DataRow`
      Parameters:
        `col` - the colum for which to query the meta-data flags
      Returns:
        the dataflag collection for the value in the specified column

    - #### derive

          public GlobalView derive()

    - #### advance

          public GlobalView advance()

    - #### removeColumn

          public void removeColumn​(java.lang.String name)

      Note: Dont remove the column. It will stay around here as long as the process lives.
      Parameters:
        `name` -