com.holonplatform.vaadin7.components.builders

## Interface PropertyListingBuilder<B extends PropertyListingBuilder<B,X>,X extends com.vaadin.ui.Component>

- Type Parameters:
    `B` - Concrete builder type
    `X` - Concrete backing component type
  All Superinterfaces:
    BaseItemDataSourceComponentBuilder<B>, ComponentBuilder<PropertyListing,B>, ComponentConfigurator<B>, ComponentPostProcessorSupport<X,B>, ItemDataSourceComponentBuilder<com.holonplatform.core.property.PropertyBox,PropertyListing,B>, ItemListingBuilder<com.holonplatform.core.property.PropertyBox,com.holonplatform.core.property.Property,PropertyListing,B,X>
  All Known Subinterfaces:
    PropertyListingBuilder.GridPropertyListingBuilder, PropertyListingBuilder.TablePropertyListingBuilder

      public interface PropertyListingBuilder<B extends PropertyListingBuilder<B,X>,X extends com.vaadin.ui.Component>
      extends ItemListingBuilder<com.holonplatform.core.property.PropertyBox,com.holonplatform.core.property.Property,PropertyListing,B,X>

  An `ItemListingBuilder` using `Property` as item properties and `PropertyBox` as item data type.
  Since:
    5.0.0

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static interface` | `PropertyListingBuilder.GridPropertyListingBuilder` Builder to create `PropertyListing` components using a `Grid` as backing component.
    `static interface` | `PropertyListingBuilder.TablePropertyListingBuilder` Builder to create `PropertyListing` components using a `Table` as backing component.

    - ### Nested classes/interfaces inherited from interface com.holonplatform.vaadin7.components.builders.ItemListingBuilder

      `ItemListingBuilder.BaseGridItemListingBuilder<T,P,C extends ItemListing<T,P>,B extends ItemListingBuilder.BaseGridItemListingBuilder<T,P,C,B>>, ItemListingBuilder.BaseTableItemListingBuilder<T,P,C extends ItemListing<T,P>,B extends ItemListingBuilder.BaseTableItemListingBuilder<T,P,C,B>>, ItemListingBuilder.FooterBuilder, ItemListingBuilder.GridFooterGenerator<T,P>, ItemListingBuilder.GridItemListingBuilder<T>, ItemListingBuilder.GridSection<ROWTYPE extends com.vaadin.ui.Grid.StaticSection.StaticRow<?>>, ItemListingBuilder.HeaderBuilder, ItemListingBuilder.TableFooterGenerator<T,P>, ItemListingBuilder.TableItemListingBuilder<T>`

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

      `ComponentConfigurator.BaseComponentConfigurator`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `B` | `dataSource(com.holonplatform.core.datastore.Datastore datastore, com.holonplatform.core.datastore.DataTarget<?> dataTarget, com.holonplatform.core.property.Property... identifierProperties)` Use given `Datastore` with given `dataTarget` as items data source.
    `B` | `dataSource(ItemDataProvider<com.holonplatform.core.property.PropertyBox> dataProvider, com.holonplatform.core.property.Property... identifierProperties)` Set the items data provider.
    `default B` | `required(com.holonplatform.core.property.Property<?> property)` Set the given property as required in the item listing editor.
    `B` | `required(com.holonplatform.core.property.Property<?> property, com.holonplatform.core.i18n.Localizable message)` Set the given property as required in the item listing editor.
    `default B` | `required(com.holonplatform.core.property.Property<?> property, String message)` Set the given property as required.
    `default B` | `required(com.holonplatform.core.property.Property<?> property, String message, String messageCode, Object... arguments)` Set the given property as required in the item listing editor.
    `<V> B` | `withValidator(com.holonplatform.core.property.Property<V> property, com.vaadin.data.Validator validator)` Adds a `Validator` to the field bound to given `property` in the item listing editor.
    `default <V> B` | `withValidator(com.holonplatform.core.property.Property<V> property, com.holonplatform.core.Validator<V> validator)` Adds a `Validator` to the field bound to given `property` in the item listing editor.

    - ### Methods inherited from interface com.holonplatform.vaadin7.components.builders.ItemListingBuilder

      `alignment, buffered, build, build, columnHidingAllowed, columnReorderingAllowed, commitHandler, defaultValue, editable, editable, editor, footerVisible, header, header, header, hidable, hidden, hideHeaders, itemDescriptionGenerator, readOnly, selectionMode, sortable, sortGenerator, sortUsing, style, style, width, withItemClickListener, withPropertyReorderListener, withPropertyResizeListener, withPropertyVisibilityListener, withRowStyle, withSelectionListener`

    - ### Methods inherited from interface com.holonplatform.vaadin7.components.builders.ItemDataSourceComponentBuilder

      `dataSource, dataSource, itemAdapter`

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

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

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

      `build, deferLocalization`

    - ### Methods inherited from interface com.holonplatform.vaadin7.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`

    - ### Methods inherited from interface com.holonplatform.vaadin7.components.builders.ComponentPostProcessorSupport

      `withPostProcessor`

- - ### Method Detail

    - #### withValidator

          default <V> B withValidator(com.holonplatform.core.property.Property<V> property,
                                      com.holonplatform.core.Validator<V> validator)

      Adds a `Validator` to the field bound to given `property` in the item listing editor.
      Type Parameters:
        `V` - Property type
      Parameters:
        `property` - Property (not null)
        `validator` - Validator to add (not null)
      Returns:
        this

    - #### withValidator

          <V> B withValidator(com.holonplatform.core.property.Property<V> property,
                              com.vaadin.data.Validator validator)

      Adds a `Validator` to the field bound to given `property` in the item listing editor.
      Type Parameters:
        `V` - Property type
      Parameters:
        `property` - Property (not null)
        `validator` - Validator to add (not null)
      Returns:
        this

    - #### required

          default B required(com.holonplatform.core.property.Property<?> property)

      Set the given property as required in the item listing editor. If a property is required, the field bound to the property will be setted as required, and its validation will fail when empty.
      Parameters:
        `property` - Property to set as required (not null)
      Returns:
        this

    - #### required

          B required(com.holonplatform.core.property.Property<?> property,
                     com.holonplatform.core.i18n.Localizable message)

      Set the given property as required in the item listing editor. If a property is required, the field bound to the property will be setted as required, and its validation will fail when empty.
      Parameters:
        `property` - Property to set as required (not null)
        `message` - The message to use to notify the required validation failure
      Returns:
        this

    - #### required

          default B required(com.holonplatform.core.property.Property<?> property,
                             String message,
                             String messageCode,
                             Object... arguments)

      Set the given property as required in the item listing editor. If a property is required, the field bound to the property will be setted as required, and its validation will fail when empty.
      Parameters:
        `property` - Property to set as required (not null)
        `message` - The default message to use to notify the required validation failure
        `messageCode` - The message localization code
        `arguments` - Optional message translation arguments
      Returns:
        this

    - #### required

          default B required(com.holonplatform.core.property.Property<?> property,
                             String message)

      Set the given property as required. If a property is required, the `Input` bound to the property will be setted as required, and its validation will fail when empty.
      Parameters:
        `property` - Property to set as required (not null)
        `message` - The default message to use to notify the required validation failure
      Returns:
        this

    - #### dataSource

          B dataSource(ItemDataProvider<com.holonplatform.core.property.PropertyBox> dataProvider,
                       com.holonplatform.core.property.Property... identifierProperties)

      Set the items data provider.
      Parameters:
        `dataProvider` - Items data provider (not null)
        `identifierProperties` - Properties wich act as item identifier
      Returns:
        this

    - #### dataSource

          B dataSource(com.holonplatform.core.datastore.Datastore datastore,
                       com.holonplatform.core.datastore.DataTarget<?> dataTarget,
                       com.holonplatform.core.property.Property... identifierProperties)

      Use given `Datastore` with given `dataTarget` as items data source.

      A `Datastore` based `ItemDataSource.CommitHandler` is also configured by default.

      Parameters:
        `datastore` - Datastore to use (not null)
        `dataTarget` - Data target to use to load items (not null)
        `identifierProperties` - Properties wich act as item identifier
      Returns:
        this

Copyright © 2019 The Holon Platform. All rights reserved.