com.holonplatform.vaadin.components.builders

## Interface BeanListingBuilder<T>

- Type Parameters:
    `T` - Bean type
  All Superinterfaces:
    BaseItemDataSourceComponentBuilder<BeanListingBuilder<T>>, ComponentBuilder<BeanListing<T>,BeanListingBuilder<T>>, ComponentConfigurator<BeanListingBuilder<T>>, ComponentPostProcessorSupport<com.vaadin.ui.Grid<T>,BeanListingBuilder<T>>, ItemDataSourceComponentBuilder<T,BeanListing<T>,BeanListingBuilder<T>>, ItemListingBuilder<T,String,BeanListing<T>,BeanListingBuilder<T>,com.vaadin.ui.Grid<T>>, ItemListingBuilder.BaseGridItemListingBuilder<T,String,BeanListing<T>,BeanListingBuilder<T>>, ItemListingBuilder.GridItemListingBuilder<T,BeanListing<T>,BeanListingBuilder<T>>

      public interface BeanListingBuilder<T>
      extends ItemListingBuilder.GridItemListingBuilder<T,BeanListing<T>,BeanListingBuilder<T>>

  A builder to create `BeanListing` instances.
  Since:
    5.1.0

- - ### Nested Class Summary

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

      `ItemListingBuilder.BaseGridItemListingBuilder<T,P,C extends ItemListing<T,P>,B extends ItemListingBuilder.BaseGridItemListingBuilder<T,P,C,B>>, ItemListingBuilder.ColumnHeaderMode, ItemListingBuilder.FooterBuilder<P>, ItemListingBuilder.GridFooterGenerator<T,P>, ItemListingBuilder.GridItemListingBuilder<T,C extends ItemListing<T,String>,B extends ItemListingBuilder.GridItemListingBuilder<T,C,B>>, ItemListingBuilder.GridSection<ROWTYPE>, ItemListingBuilder.HeaderBuilder<P>, ItemListingBuilder.ListingFooterRow<P>, ItemListingBuilder.ListingHeaderRow<P>`

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

      `ComponentConfigurator.BaseComponentConfigurator`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `<V> BeanListingBuilder<T>` | `withVirtualColumn(String id, Class<V> type, com.vaadin.data.ValueProvider<T,V> valueProvider)` Add a virtual column to the listing, i.e. a column which is not directly bound to a bean property.

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

      `dataSource, dataSource, editor, render, render, withValidator, withValidator`

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

      `commitOnRemove, commitOnSave, detailsGenerator, editorBuffered, editorCancelCaption, editorCancelCaption, editorCancelCaption, editorErrorGenerator, editorSaveCaption, editorSaveCaption, editorSaveCaption, expandRatio, footer, footerGenerator, frozenColumns, header, headerHTML, headerHTML, headerHTML, headerMode, heightByContents, heightByRows, hidingToggleCaption, hidingToggleCaption, hidingToggleCaption, maxWidth, minimumWidthFromContent, minWidth, required, required, required, required, resizable, withEditorCancelListener, withEditorOpenListener, withEditorSaveListener, withValidator, withValidator`

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

      `alignment, bodyRowHeight, buffered, build, build, columnHidingAllowed, columnReorderingAllowed, commitHandler, defaultValue, displayAfter, displayAsFirst, displayAsLast, displayBefore, editable, editable, footerRowHeight, footerVisible, header, header, header, headerRowHeight, hidable, hidden, hideHeaders, itemDescriptionGenerator, readOnly, rowHeight, selectAllCheckBoxVisibility, selectionMode, sortable, sortable, sortGenerator, sortUsing, style, style, width, withItemClickListener, withPropertyReorderListener, withPropertyResizeListener, withPropertyVisibilityListener, withRowStyle, withSelectionListener`

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

      `dataSource, dataSource`

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

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

      `withPostProcessor`

- - ### Method Detail

    - #### withVirtualColumn

          <V> BeanListingBuilder<T> withVirtualColumn(String id,
                                                      Class<V> type,
                                                      com.vaadin.data.ValueProvider<T,V> valueProvider)

      Add a virtual column to the listing, i.e. a column which is not directly bound to a bean property.

      The column id can be later used to set the column position providing the visibile columns order through the final builder method `ItemListingBuilder.build(Object...)`.

      Type Parameters:
        `V` - Column value type
      Parameters:
        `id` - Column id (not null)
        `type` - Column value type (not null)
        `valueProvider` - Column value provider (not null)
      Returns:
        this

Copyright © 2019 The Holon Platform. All rights reserved.