Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.faces.model
Class ScalarDataModel<E>

    java.lang.Object
      javax.faces.model.DataModel<E>
          javax.faces.model.ScalarDataModel<E>

All Implemented Interfaces:
  Iterable<E>

    public class ScalarDataModel<E>

extends DataModel<E>

ScalarDataModel is a convenience implementation of `DataModel` that wraps an individual Java object.

Constructor Summary
`ScalarDataModel()` Construct a new `ScalarDataModel` with no specified wrapped data.
`ScalarDataModel(E scalar)` Construct a new `ScalarDataModel` wrapping the specified scalar object.

Method Summary
`int` | `getRowCount()` If there is `wrappedData` available, return 1.
`E` | `getRowData()` If wrapped data is available, return the wrapped data instance.
`int` | `getRowIndex()` Return the zero-relative index of the currently selected row.
`Object` | `getWrappedData()` Return the object representing the data wrapped by this `DataModel`, if any.
`boolean` | `isRowAvailable()` Return `true` if there is `wrappedData` available, and the current value of `rowIndex` is zero.
`void` | `setRowIndex(int rowIndex)` Set the zero-relative index of the currently selected row, or -1 to indicate that we are not positioned on a row.
`void` | `setWrappedData(Object data)` Set the object representing the data collection wrapped by this `DataModel`.

Methods inherited from class javax.faces.model.DataModel
`addDataModelListener, getDataModelListeners, iterator, removeDataModelListener`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ScalarDataModel

    public ScalarDataModel()

  Construct a new `ScalarDataModel` with no specified wrapped data.

### ScalarDataModel

    public ScalarDataModel(E scalar)

  Construct a new `ScalarDataModel` wrapping the specified scalar object.

  Parameters:
    `scalar` - Scalar to be wrapped (if any)

Method Detail

### isRowAvailable

    public boolean isRowAvailable()

  Return `true` if there is `wrappedData` available, and the current value of `rowIndex` is zero. Otherwise, return `false`.

  Specified by:
    `isRowAvailable` in class `DataModel<E>`
  Throws:
    `FacesException` - if an error occurs getting the row availability

### getRowCount

    public int getRowCount()

  If there is `wrappedData` available, return 1. If no `wrappedData` is available, return -1.

  Specified by:
    `getRowCount` in class `DataModel<E>`
  Throws:
    `FacesException` - if an error occurs getting the row count

### getRowData

    public E getRowData()

  If wrapped data is available, return the wrapped data instance. Otherwise, return `null`.

  Specified by:
    `getRowData` in class `DataModel<E>`
  Throws:
    `FacesException` - if an error occurs getting the row data
    `IllegalArgumentException` - if now row data is available at the currently specified row index

### getRowIndex

    public int getRowIndex()

  Description copied from class: `DataModel`

  Return the zero-relative index of the currently selected row. If we are not currently positioned on a row, or no `wrappedData` is available, return -1.

  Specified by:
    `getRowIndex` in class `DataModel<E>`
  Throws:
    `FacesException` - if an error occurs getting the row index

### setRowIndex

    public void setRowIndex(int rowIndex)

  Description copied from class: `DataModel`

  Set the zero-relative index of the currently selected row, or -1 to indicate that we are not positioned on a row. It is possible to set the row index at a value for which the underlying data collection does not contain any row data. Therefore, callers may use the `isRowAvailable()` method to detect whether row data will be available for use by the `getRowData()` method.

  If there is no `wrappedData` available when this method is called, the specified `rowIndex` is stored (and may be retrieved by a subsequent call to `getRowData()`), but no event is sent. Otherwise, if the currently selected row index is changed by this call, a `DataModelEvent` will be sent to the `rowSelected()` method of all registered `DataModelListener`s.

  Specified by:
    `setRowIndex` in class `DataModel<E>`
  Parameters:
    `rowIndex` - The new zero-relative index (must be non-negative)
  Throws:
    `FacesException` - if an error occurs setting the row index
    `IllegalArgumentException` - if `rowIndex` is less than -1

### getWrappedData

    public Object getWrappedData()

  Description copied from class: `DataModel`

  Return the object representing the data wrapped by this `DataModel`, if any.

  Specified by:
    `getWrappedData` in class `DataModel<E>`

### setWrappedData

    public void setWrappedData(Object data)

  Description copied from class: `DataModel`

  Set the object representing the data collection wrapped by this `DataModel`. If the specified `data` is `null`, detach this `DataModel` from any previously wrapped data collection instead.

  If `data` is non-`null`, the currently selected row index must be set to zero, and a `DataModelEvent` must be sent to the `rowSelected()` method of all registered `DataModelListener`s indicating that this row is now selected.

  Specified by:
    `setWrappedData` in class `DataModel<E>`
  Parameters:
    `data` - Data collection to be wrapped, or `null` to detach from any previous data collection
  Throws:
    `ClassCastException` - if `data` is not of the appropriate type for this `DataModel` implementation

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2002-2009 Sun Microsystems, Inc. All Rights Reserved.