GWT 2.7.0

## com.google.gwt.view.client
Class AbstractDataProvider<T>

    java.lang.Object
      com.google.gwt.view.client.AbstractDataProvider<T>

Type Parameters:
  `T` - the data type of records in the list

All Implemented Interfaces:
  ProvidesKey<T>

Direct Known Subclasses:
  AsyncDataProvider, ListDataProvider

    public abstract class AbstractDataProvider<T>

extends java.lang.Object
implements ProvidesKey<T>

A base implementation of a data source for `HasData` implementations.

Constructor Summary
`protected` | `AbstractDataProvider()` Construct an AbstractDataProvider without a key provider.
`protected` | `AbstractDataProvider(ProvidesKey<T> keyProvider)` Construct an AbstractDataProvider with a given key provider.

Method Summary
`void` | `addDataDisplay(HasData<T> display)` Adds a data display to this adapter.
`java.util.Set<HasData<T>>` | `getDataDisplays()` Get the set of displays currently assigned to this adapter.
`java.lang.Object` | `getKey(T item)` Get the key for a list item.
`ProvidesKey<T>` | `getKeyProvider()` Get the `ProvidesKey` that provides keys for list items.
`Range[]` | `getRanges()` Get the current ranges of all displays.
`protected abstract void` | `onRangeChanged(HasData<T> display)` Called when a display changes its range of interest.
`void` | `removeDataDisplay(HasData<T> display)` Remove the given data display.
`protected void` | `updateRowCount(int count, boolean exact)` Inform the displays of the total number of items that are available.
`protected void` | `updateRowData(HasData<T> display, int start, java.util.List<T> values)` Informs a single display of new data.
`protected void` | `updateRowData(int start, java.util.List<T> values)` Inform the displays of the new data.

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

Constructor Detail

### AbstractDataProvider

    protected AbstractDataProvider()

  Construct an AbstractDataProvider without a key provider.

### AbstractDataProvider

    protected AbstractDataProvider(ProvidesKey<T> keyProvider)

  Construct an AbstractDataProvider with a given key provider.

  Parameters:
    `keyProvider` - a `ProvidesKey` object

Method Detail

### addDataDisplay

    public void addDataDisplay(HasData<T> display)

  Adds a data display to this adapter. The current range of interest of the display will be populated with data.

  Parameters:
    `display` - a `HasData`.

### getDataDisplays

    public java.util.Set<HasData<T>> getDataDisplays()

  Get the set of displays currently assigned to this adapter.

  Returns:
    the set of `HasData`

### getKey

    public java.lang.Object getKey(T item)

  Get the key for a list item. The default implementation returns the item itself.

  Specified by:
    `getKey` in interface `ProvidesKey<T>`
  Parameters:
    `item` - the list item
  Returns:
    the key that represents the item

### getKeyProvider

    public ProvidesKey<T> getKeyProvider()

  Get the `ProvidesKey` that provides keys for list items.

  Returns:
    the `ProvidesKey`

### getRanges

    public Range[] getRanges()

  Get the current ranges of all displays.

  Returns:
    the ranges

### removeDataDisplay

    public void removeDataDisplay(HasData<T> display)

  Remove the given data display.

  Parameters:
    `display` - a `HasData` instance
  Throws:
    `java.lang.IllegalStateException` - if the display is not present

### onRangeChanged

    protected abstract void onRangeChanged(HasData<T> display)

  Called when a display changes its range of interest.

  Parameters:
    `display` - the display whose range has changed

### updateRowCount

    protected void updateRowCount(int count,
                                  boolean exact)

  Inform the displays of the total number of items that are available.

  Parameters:
    `count` - the new total row count
    `exact` - true if the count is exact, false if it is an estimate

### updateRowData

    protected void updateRowData(int start,
                                 java.util.List<T> values)

  Inform the displays of the new data.

  Parameters:
    `start` - the start index
    `values` - the data values

### updateRowData

    protected void updateRowData(HasData<T> display,
                                 int start,
                                 java.util.List<T> values)

  Informs a single display of new data.

  Parameters:
    `display` - the display to be updated
    `start` - the start index
    `values` - the data values

GWT 2.7.0