com.holonplatform.vaadin.flow.components.builders

## Interface HasBeanDatastoreDataProviderConfigurator<T,D extends DatastoreDataProviderConfigurator<T,D>,C extends HasBeanDatastoreDataProviderConfigurator<T,D,C>>

- Type Parameters:
    `T` - Bean item type
    `C` - Concrete configurator type
  All Superinterfaces:
    HasDataProviderConfigurator<T,C>, HasItemsConfigurator<T,C>
  All Known Subinterfaces:
    BeanListingBuilder<T>, OptionsMultiSelectConfigurator.OptionsMultiSelectInputBuilder<T,ITEM>, OptionsMultiSelectConfigurator.OptionsMultiSelectInputConfigurator<T,ITEM,D,C>, OptionsMultiSelectConfigurator.ValidatableOptionsMultiSelectInputBuilder<T,ITEM>, OptionsSingleSelectConfigurator.OptionsSingleSelectInputBuilder<T,ITEM>, OptionsSingleSelectConfigurator.OptionsSingleSelectInputConfigurator<T,ITEM,D,C>, OptionsSingleSelectConfigurator.ValidatableOptionsSingleSelectInputBuilder<T,ITEM>, SingleSelectConfigurator.SingleSelectInputBuilder<T,ITEM>, SingleSelectConfigurator.SingleSelectInputConfigurator<T,ITEM,D,C>, SingleSelectConfigurator.ValidatableSingleSelectInputBuilder<T,ITEM>

      public interface HasBeanDatastoreDataProviderConfigurator<T,D extends DatastoreDataProviderConfigurator<T,D>,C extends HasBeanDatastoreDataProviderConfigurator<T,D,C>>
      extends HasDataProviderConfigurator<T,C>

  `HasDataProviderConfigurator` with `Datastore` configuration support and known bean type.
  Since:
    5.2.0

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `D` | `dataSource(com.holonplatform.core.datastore.Datastore datastore, com.holonplatform.core.datastore.DataTarget<?> target)` Set the data provider which acts as items data source, using given `Datastore` as backend data handler and given `DataTarget` as query target.
    `<P extends com.holonplatform.core.property.Property> D` | `dataSource(com.holonplatform.core.datastore.Datastore datastore, com.holonplatform.core.datastore.DataTarget<?> target, Function<com.holonplatform.core.property.PropertyBox,T> itemConverter, Iterable<P> properties)` Set the data provider which acts as items data source, using given `Datastore` as backend data handler, given `DataTarget` as query target and given `properties` as query projection.
    `default D` | `dataSource(com.holonplatform.core.datastore.Datastore datastore, com.holonplatform.core.datastore.DataTarget<?> target, Function<com.holonplatform.core.property.PropertyBox,T> itemConverter, com.holonplatform.core.property.Property<?>... properties)` Set the data provider which acts as items data source, using given `Datastore` as backend data handler, given `DataTarget` as query target and given `properties` as query projection.

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

      `addItem, dataSource, items, items`

- - ### Method Detail

    - #### dataSource

          <P extends com.holonplatform.core.property.Property> D dataSource(com.holonplatform.core.datastore.Datastore datastore,
                                                                            com.holonplatform.core.datastore.DataTarget<?> target,
                                                                            Function<com.holonplatform.core.property.PropertyBox,T> itemConverter,
                                                                            Iterable<P> properties)

      Set the data provider which acts as items data source, using given `Datastore` as backend data handler, given `DataTarget` as query target and given `properties` as query projection. An `itemConverter` function is used to convert the Datastore `PropertyBox` data type into the required bean type.
      Type Parameters:
        `P` - Property type
      Parameters:
        `datastore` - The `Datastore` to use (not null)
        `target` - The `DataTarget` to use as query target (not null)
        `itemConverter` - The function to use to convert the Datastore `PropertyBox` data type into the required item type
        `properties` - The property set to use as query projection (not null)
      Returns:
        An extended builder which allow further data provider configuration, for example to add fixed `QueryFilter` and `QuerySort`.
      See Also:
        `DatastoreDataProviderConfigurator`

    - #### dataSource

          default D dataSource(com.holonplatform.core.datastore.Datastore datastore,
                               com.holonplatform.core.datastore.DataTarget<?> target,
                               Function<com.holonplatform.core.property.PropertyBox,T> itemConverter,
                               com.holonplatform.core.property.Property<?>... properties)

      Set the data provider which acts as items data source, using given `Datastore` as backend data handler, given `DataTarget` as query target and given `properties` as query projection. An `itemConverter` function is used to convert the Datastore `PropertyBox` data type into the required bean type.
      Parameters:
        `datastore` - The `Datastore` to use (not null)
        `target` - The `DataTarget` to use as query target (not null)
        `itemConverter` - The function to use to convert the Datastore `PropertyBox` data type into the required item type
        `properties` - The property set to use as query projection (not null)
      Returns:
        An extended builder which allow further data provider configuration, for example to add fixed `QueryFilter` and `QuerySort`.
      See Also:
        `DatastoreDataProviderConfigurator`

    - #### dataSource

          D dataSource(com.holonplatform.core.datastore.Datastore datastore,
                       com.holonplatform.core.datastore.DataTarget<?> target)

      Set the data provider which acts as items data source, using given `Datastore` as backend data handler and given `DataTarget` as query target. The Datastore `PropertyBox` type items will be converted into the required bean type.
      Parameters:
        `datastore` - The `Datastore` to use (not null)
        `target` - The `DataTarget` to use as query target (not null)
      Returns:
        An extended builder which allow further data provider configuration, for example to add fixed `QueryFilter` and `QuerySort`.
      See Also:
        `DatastoreDataProviderConfigurator`

Copyright © 2019 The Holon Platform. All rights reserved.