Class GridListDataView<T>
java.lang.Object
com.vaadin.flow.data.provider.AbstractDataView<T>
com.vaadin.flow.data.provider.AbstractListDataView<T>
com.vaadin.flow.component.grid.dataview.GridListDataView<T>
- Type Parameters:
T
- data type
- All Implemented Interfaces:
DataView<T>
,ListDataView<T,
,AbstractListDataView<T>> Serializable
Data view implementation for Grid with in-memory list data. Provides
information on the data and allows operations on it.
- Since:
- See Also:
-
Field Summary
Fields inherited from class com.vaadin.flow.data.provider.AbstractDataView
component, dataProviderSupplier, NULL_IDENTIFIER_ERROR_MESSAGE, NULL_ITEM_ERROR_MESSAGE
-
Constructor Summary
ConstructorsConstructorDescriptionGridListDataView
(DataCommunicator<T> dataCommunicator, Grid<T> grid, SerializableBiConsumer<SerializablePredicate<T>, SerializableComparator<T>> filterOrSortingChangedCallback) Creates a new instance of Grid in-memory data view and verifies the passed data provider is compatible with this data view implementation. -
Method Summary
Modifier and TypeMethodDescriptionint
Get the full item count with filters if any set.getItems()
Get the full data available to the component.void
setIdentifierProvider
(IdentifierProvider<T> identifierProvider) Sets an identifier provider, which returns an identifier for the given item.Methods inherited from class com.vaadin.flow.data.provider.AbstractListDataView
addFilter, addItem, addItemAfter, addItemBefore, addItems, addItemsAfter, addItemsBefore, addSortComparator, addSortOrder, contains, getDataProvider, getItem, getNextItem, getPreviousItem, getSupportedDataProviderType, removeFilters, removeItem, removeItems, removeSorting, setFilter, setSortComparator, setSortOrder, validateItemIndex
Methods inherited from class com.vaadin.flow.data.provider.AbstractDataView
addIdentifierProviderChangeListener, addItemCountChangeListener, equals, getIdentifierProvider, getItemIndex, getItemIndex, refreshAll, refreshItem, verifyDataProviderType, verifyDataProviderType
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.vaadin.flow.data.provider.DataView
addItemCountChangeListener, getItemIndex, refreshAll, refreshItem
-
Constructor Details
-
GridListDataView
public GridListDataView(DataCommunicator<T> dataCommunicator, Grid<T> grid, SerializableBiConsumer<SerializablePredicate<T>, SerializableComparator<T>> filterOrSortingChangedCallback) Creates a new instance of Grid in-memory data view and verifies the passed data provider is compatible with this data view implementation.- Parameters:
dataCommunicator
- the data communicator of the Grid, notnull
grid
- the Grid component, notnull
filterOrSortingChangedCallback
- callback, which is being invoked when the Grid's filtering or sorting changes, notnull
-
-
Method Details
-
getItems
Description copied from interface:DataView
Get the full data available to the component. Data is filtered and sorted the same way as in the component.Consumers of the returned stream are responsible for closing it when all the stream operations are done to ensure that any resources feeding the stream are properly released. Failure to close the stream might lead to resource leaks.
It is strongly recommended to use a try-with-resources block to automatically close the stream after its terminal operation has been executed. Below is an example of how to properly use and close the stream:
try (Stream<T> stream = dataView.getItems()) { stream.forEach(System.out::println); // Example terminal operation }
-
getItemCount
public int getItemCount()Description copied from interface:ListDataView
Get the full item count with filters if any set. As the item count might change at any point, it is recommended to add a listener with theDataView.addItemCountChangeListener(ComponentEventListener)
method instead to get notified when the item count has changed.- Specified by:
getItemCount
in interfaceListDataView<T,
AbstractListDataView<T>> - Overrides:
getItemCount
in classAbstractListDataView<T>
- Returns:
- filtered item count
- See Also:
-
setIdentifierProvider
Description copied from interface:DataView
Sets an identifier provider, which returns an identifier for the given item. The identifier is used for comparing the equality of items. Usage example:dataView.setIdentifiedProvider(Item::getId);
.- Specified by:
setIdentifierProvider
in interfaceDataView<T>
- Overrides:
setIdentifierProvider
in classAbstractDataView<T>
- Parameters:
identifierProvider
- function that returns the non-null identifier for a given item
-