Package com.storedobject.ui
Class ObjectListProvider<T extends StoredObject>
java.lang.Object
com.vaadin.flow.data.provider.AbstractDataProvider<T,com.vaadin.flow.function.SerializablePredicate<T>>
com.vaadin.flow.data.provider.ListDataProvider<T>
com.storedobject.ui.AbstractListProvider<T>
com.storedobject.ui.ObjectListProvider<T>
- All Implemented Interfaces:
ResourceOwner,FilterMethods<T>,ObjectLoader<T>,ObjectLoader<T>,ViewFilterSupport<T>,com.vaadin.flow.data.provider.ConfigurableFilterDataProvider<T,,com.vaadin.flow.function.SerializablePredicate<T>, com.vaadin.flow.function.SerializablePredicate<T>> com.vaadin.flow.data.provider.DataProvider<T,,com.vaadin.flow.function.SerializablePredicate<T>> com.vaadin.flow.data.provider.InMemoryDataProvider<T>,Serializable,AutoCloseable
- Direct Known Subclasses:
EditableObjectListProvider,ReferenceLinkListProvider
public class ObjectListProvider<T extends StoredObject>
extends AbstractListProvider<T>
implements ObjectLoader<T>, AutoCloseable, ResourceOwner
- See Also:
-
Nested Class Summary
Nested Classes -
Constructor Summary
ConstructorsConstructorDescriptionObjectListProvider(ObjectList<T> cache) ObjectListProvider(Class<T> objectClass, DataList<T> data) -
Method Summary
Modifier and TypeMethodDescriptionvoidThis method is called whenever a filter predicate is changed.voidclear()Clear - remove all entries.final voidclose()booleanget(int index) intgetData()getEffectiveCondition(String condition) Get the "effective" filter condition that must be applied for loading.Get the load filter.intGet the "resource" owned by this "resource owner".intvoidload(int linkType, StoredObject master, String condition, String orderBy, boolean any) Load the links of the given "master" instance.voidload(ObjectIterator<T> objects) Load the given instances.voidLoad the instances.voidreload()Reload all entries.voidsetLoadFilter(Predicate<T> loadFilter) Set the load filter.Methods inherited from class com.storedobject.ui.AbstractListProvider
addDataLoadedListener, fetch, filterView, getDataProvider, getItems, getObjectClass, getViewFilter, refreshAll, setFilter, setSortComparator, sizeMethods inherited from class com.vaadin.flow.data.provider.ListDataProvider
getFilter, getSortComparatorMethods inherited from class com.vaadin.flow.data.provider.AbstractDataProvider
addDataProviderListener, addListener, fireEvent, refreshItem, refreshItemMethods 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
addDataProviderListener, refreshItem, refreshItem, withConfigurableFilter, withConfigurableFilter, withConvertedFilterMethods inherited from interface com.storedobject.core.FilterMethods
getFilterCondition, setFilter, setFilter, setFilter, setFilter, setFilter, setFilter, setLoadFilter, setViewFilter, setViewFilterMethods inherited from interface com.vaadin.flow.data.provider.InMemoryDataProvider
addFilter, addFilter, addFilterByValue, addSortComparator, addSortOrder, clearFilters, filteringBy, filteringBy, filteringByEquals, filteringByPrefix, filteringByPrefix, filteringBySubstring, filteringBySubstring, isInMemory, setFilter, setFilterByValue, setSortOrderMethods inherited from interface com.storedobject.core.ObjectLoader
applyFilter, canContain, getAllowAny, getLinkType, getMaster, getObjectClass, getOrderBy, isAllowAny, load, load, load, load, load, load, load, load, load, load, load, load, load, load, load, load, load, load, load, load, setLinkType, setLinkType, setMaster, setMaster, setOrderBy, setOrderByMethods inherited from interface com.storedobject.ui.ObjectLoader
addDataLoadedListener, clear, getDelegatedLoader, setExtraFilter, setExtraFilter, setFilter, setFilter, setFixedFilter, setFixedFilter, setFixedFilter, setFixedFilter, sizeMethods inherited from interface com.storedobject.ui.util.ViewFilterSupport
configure, configure, configure, configureMatch
-
Constructor Details
-
ObjectListProvider
-
ObjectListProvider
-
-
Method Details
-
getFixedFilter
- Specified by:
getFixedFilterin interfaceObjectLoader<T extends StoredObject>
-
getData
- Overrides:
getDatain classAbstractListProvider<T extends StoredObject>
-
getId
- Specified by:
getIdin interfacecom.vaadin.flow.data.provider.DataProvider<T extends StoredObject,com.vaadin.flow.function.SerializablePredicate<T extends StoredObject>>
-
contains
-
getEffectiveCondition
Description copied from interface:FilterMethodsGet the "effective" filter condition that must be applied for loading. The result fromFilterMethods.getFilterCondition()will be passed as a parameter to this method to get a modified "condition" if required.- Specified by:
getEffectiveConditionin interfaceFilterMethods<T extends StoredObject>- Specified by:
getEffectiveConditionin interfaceObjectLoader<T extends StoredObject>- Parameters:
condition- Condition obtained fromFilterMethods.getFilterCondition().- Returns:
- Modified condition or the same if no modification required.
-
load
Description copied from interface:ObjectLoaderLoad the instances. Current "load filter" if set will be applied. If "master" is already set, "links" of the "master" will be loaded.- Specified by:
loadin interfaceObjectLoader<T extends StoredObject>- Parameters:
condition- Filtering condition to be applied.orderBy- "ORDER BY" clause to use while loading.any- Whether instanced of the subclasses to be retrieved or not.
-
load
Description copied from interface:ObjectLoaderLoad the links of the given "master" instance. Current "load filter" if set will be applied.- Specified by:
loadin interfaceObjectLoader<T extends StoredObject>- Parameters:
linkType- Link type.master- Master instance.condition- Filtering condition to be applied.orderBy- "ORDER BY" clause to use while loading.any- Whether instanced of the subclasses to be retrieved or not.
-
load
Description copied from interface:ObjectLoaderLoad the given instances. Current "load filter" if set will be applied. However,ObjectLoader.getOrderBy()result will be ignored. Also, the value returned byObjectLoader.getAllowAny()will determine whether instanced of the subclasses to be restricted or not.- Specified by:
loadin interfaceObjectLoader<T extends StoredObject>- Specified by:
loadin interfaceObjectLoader<T extends StoredObject>- Parameters:
objects- Objects to be loaded.
-
reload
public void reload()Description copied from interface:ObjectLoaderReload all entries.- Specified by:
reloadin interfaceObjectLoader<T extends StoredObject>
-
applyFilterPredicate
public void applyFilterPredicate()Description copied from interface:FilterMethodsThis method is called whenever a filter predicate is changed. Methods with default implementation already invoke this method. If any of those methods are overridden, make sure that it invokes this method so that logic to handle filter changes can be coded here.Note: This method is used to show the filtered result of the existing entries
- Specified by:
applyFilterPredicatein interfaceFilterMethods<T extends StoredObject>- Specified by:
applyFilterPredicatein interfaceObjectLoader<T extends StoredObject>
-
getObjectCount
public int getObjectCount()- Specified by:
getObjectCountin interfaceObjectLoader<T extends StoredObject>- Overrides:
getObjectCountin classAbstractListProvider<T extends StoredObject>
-
get
- Specified by:
getin interfaceObjectLoader<T extends StoredObject>- Overrides:
getin classAbstractListProvider<T extends StoredObject>
-
indexOf
- Specified by:
indexOfin interfaceObjectLoader<T extends StoredObject>- Overrides:
indexOfin classAbstractListProvider<T extends StoredObject>
-
streamAll
- Specified by:
streamAllin interfaceObjectLoader<T extends StoredObject>- Overrides:
streamAllin classAbstractListProvider<T extends StoredObject>
-
streamFiltered
- Specified by:
streamFilteredin interfaceObjectLoader<T extends StoredObject>- Overrides:
streamFilteredin classAbstractListProvider<T extends StoredObject>
-
getCacheLevel
public int getCacheLevel()- Specified by:
getCacheLevelin interfaceObjectLoader<T extends StoredObject>
-
clear
public void clear()Description copied from interface:ObjectLoaderClear - remove all entries.- Specified by:
clearin interfaceObjectLoader<T extends StoredObject>- Overrides:
clearin classAbstractListProvider<T extends StoredObject>
-
close
public final void close()- Specified by:
closein interfaceAutoCloseable- Overrides:
closein classAbstractListProvider<T extends StoredObject>
-
getResource
Description copied from interface:ResourceOwnerGet the "resource" owned by this "resource owner".- Specified by:
getResourcein interfaceResourceOwner- Returns:
- The "resource" owned by this "resource owner".
-
getLoadFilter
Description copied from interface:FilterMethodsGet the load filter.- Specified by:
getLoadFilterin interfaceFilterMethods<T extends StoredObject>- Specified by:
getLoadFilterin interfaceObjectLoader<T extends StoredObject>- Returns:
- Current load filter.
-
setLoadFilter
Description copied from interface:FilterMethodsSet the load filter. This will be applied whenever loading takes place.- Specified by:
setLoadFilterin interfaceFilterMethods<T extends StoredObject>- Parameters:
loadFilter- Load filter to be applied while loading.
-