Class AbstractDataProvider<T,F>
- Type Parameters:
T- data typeF- filter type
- All Implemented Interfaces:
DataProvider<T,,F> Serializable
- Direct Known Subclasses:
AbstractBackEndDataProvider,AbstractHierarchicalDataProvider,ListDataProvider
- Since:
- 1.0
- Author:
- Vaadin Ltd
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddDataProviderListener(DataProviderListener<T> listener) Adds a data provider listener.protected <E> RegistrationaddListener(Class<E> eventType, SerializableConsumer<E> method) Registers a new listener with the specified activation method to listen events generated by this component.protected voidfireEvent(EventObject event) Sends the event to all listeners.voidRefreshes all data based on currently available data in the underlying provider.voidrefreshItem(T item) Refreshes the given item.voidrefreshItem(T item, boolean refreshChildren) Refreshes the given item and its children whenrefreshChildrenis true.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.vaadin.flow.data.provider.DataProvider
fetch, getId, isInMemory, size, withConfigurableFilter, withConfigurableFilter, withConvertedFilter
-
Constructor Details
-
AbstractDataProvider
public AbstractDataProvider()
-
-
Method Details
-
addDataProviderListener
Description copied from interface:DataProviderAdds a data provider listener. The listener is called when some piece of data is updated.The
DataProvider.refreshAll()method firesDataChangeEventeach time when it's called. It allows to update UI components when user changes something in the underlying data.- Specified by:
addDataProviderListenerin interfaceDataProvider<T,F> - Parameters:
listener- the data change listener, not null- Returns:
- a registration for the listener
- See Also:
-
refreshAll
public void refreshAll()Description copied from interface:DataProviderRefreshes all data based on currently available data in the underlying provider.- Specified by:
refreshAllin interfaceDataProvider<T,F>
-
refreshItem
Description copied from interface:DataProviderRefreshes the given item and its children whenrefreshChildrenis true.This method will reset the item's cached hierarchy which can cause a content shift if the item also contains expanded children: their descendants aren't guaranteed to be re-fetched eagerly if they aren't visible, which may affect the overall size of the rendered hierarchy, leading to content shifts.
This method is only supported for hierarchical data providers that use
HierarchicalDataProvider.HierarchyFormat.NESTED.- Specified by:
refreshItemin interfaceDataProvider<T,F> - Parameters:
item- the item to refreshrefreshChildren- whether or not to refresh child items
-
refreshItem
Description copied from interface:DataProviderRefreshes the given item. This method should be used to inform allDataProviderListenersthat an item has been updated or replaced with a new instance.For this to work properly, the item must either implement
Object.equals(Object)andObject.hashCode()to consider both the old and the new item instances to be equal, or alternativelyDataProvider.getId(Object)should be implemented to return an appropriate identifier.- Specified by:
refreshItemin interfaceDataProvider<T,F> - Parameters:
item- the item to refresh- See Also:
-
addListener
Registers a new listener with the specified activation method to listen events generated by this component. If the activation method does not have any arguments the event object will not be passed to it when it's called.- Type Parameters:
E- the event type- Parameters:
eventType- the type of the listened event. Events of this type or its subclasses activate the listener.method- the consumer to receive the event.- Returns:
- a registration for the listener
-
fireEvent
Sends the event to all listeners.- Parameters:
event- the Event to be sent to all listeners.
-