com.holonplatform.vaadin.components.builders

## Interface ItemDataSourceComponentBuilder<ITEM,C extends com.vaadin.ui.Component,B extends ItemDataSourceComponentBuilder<ITEM,C,B>>

- Type Parameters:
    `ITEM` - Item data type
    `C` - Concrete component type
    `B` - Concrete builder type
  All Superinterfaces:
    BaseItemDataSourceComponentBuilder<B>, ComponentBuilder<C,B>, ComponentConfigurator<B>
  All Known Subinterfaces:
    ItemListingBuilder<T,P,C,B,X>, ItemListingBuilder.BaseGridItemListingBuilder<T,P,C,B>, ItemListingBuilder.BaseTableItemListingBuilder<T,P,C,B>, ItemListingBuilder.GridItemListingBuilder<T>, ItemListingBuilder.TableItemListingBuilder<T>, PropertyListingBuilder<B,X>, PropertyListingBuilder.GridPropertyListingBuilder, PropertyListingBuilder.TablePropertyListingBuilder

      public interface ItemDataSourceComponentBuilder<ITEM,C extends com.vaadin.ui.Component,B extends ItemDataSourceComponentBuilder<ITEM,C,B>>
      extends BaseItemDataSourceComponentBuilder<B>, ComponentBuilder<C,B>

  Builder for components with `ItemDataSource` and item property configuration support.
  Since:
    5.0.0

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface com.holonplatform.vaadin.components.builders.ComponentConfigurator

      `ComponentConfigurator.BaseComponentConfigurator`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `default B` | `dataSource(ItemDataProvider<ITEM> dataProvider)` Set the data source items data provider, using the item itself as item identifier.
    `B` | `dataSource(ItemDataProvider<ITEM> dataProvider, ItemIdentifierProvider<ITEM,?> itemIdentifierProvider)` Set the data source items data provider and the `ItemIdentifierProvider` to obtain item identifiers.
    `B` | `itemAdapter(ItemAdapter<ITEM> itemAdapter)` Set the item adapter to use to convert data source items into container items and back.

    - ### Methods inherited from interface com.holonplatform.vaadin.components.builders.BaseItemDataSourceComponentBuilder

      `autoRefresh, batchSize, defaultSort, fixedFilter, fixedSort, maxCacheSize, queryParameter, withQueryConfigurationProvider`

    - ### Methods inherited from interface com.holonplatform.vaadin.components.builders.ComponentBuilder

      `build, deferLocalization`

    - ### Methods inherited from interface com.holonplatform.vaadin.components.builders.ComponentConfigurator

      `caption, caption, caption, captionAsHtml, description, description, description, disabled, errorHandler, fullHeight, fullSize, fullWidth, height, height, heightUndefined, hidden, icon, id, immediate, notVisible, primaryStyleName, replaceStyleName, responsive, sizeUndefined, styleName, width, width, widthUndefined, withAttachListener, withContextClickListener, withData, withDetachListener, withShortcutListener`

- - ### Method Detail

    - #### dataSource

          B dataSource(ItemDataProvider<ITEM> dataProvider,
                       ItemIdentifierProvider<ITEM,?> itemIdentifierProvider)

      Set the data source items data provider and the `ItemIdentifierProvider` to obtain item identifiers.
      Parameters:
        `dataProvider` - Items data provider (not null)
        `itemIdentifierProvider` - Item identifier provider (not null)
      Returns:
        this

    - #### dataSource

          default B dataSource(ItemDataProvider<ITEM> dataProvider)

      Set the data source items data provider, using the item itself as item identifier.
      Parameters:
        `dataProvider` - Items data provider (not null)
      Returns:
        this

    - #### itemAdapter

          B itemAdapter(ItemAdapter<ITEM> itemAdapter)

      Set the item adapter to use to convert data source items into container items and back.
      Parameters:
        `itemAdapter` - the item adapter (not null)
      Returns:
        this

Copyright © 2017 The Holon Platform. All rights reserved.