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:
    BeanListingBuilder<T>, ItemListingBuilder<T,P,C,B,X>, ItemListingBuilder.BaseGridItemListingBuilder<T,P,C,B>, ItemListingBuilder.GridItemListingBuilder<T,C,B>, PropertyListingBuilder<C,B,X>, PropertyListingBuilder.BaseGridPropertyListingBuilder<C,B>, PropertyListingBuilder.GridPropertyListingBuilder

      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.

    - ### 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, dragSource, dropTarget`

    - ### 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, 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

Copyright © 2019 The Holon Platform. All rights reserved.