com.vaadin.flow.data.provider.
Class InMemoryDataProviderHelpers
Helper methods for implementing InMemoryDataProvider
s.
This class is intended primarily for internal use.
Since:
1.0
Author:
Vaadin Ltd
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final SerializableSupplier<Locale>
Supplier that attempts to resolve a locale from the current UI.
-
Method Summary
Modifier and TypeMethodDescriptionstatic <T,
V> SerializablePredicate<T> createEqualsFilter
(ValueProvider<T, V> valueProvider, V requiredValue) Creates a predicate that compares equality of the given required value to the value the given value provider obtains.
static <T,
V> SerializablePredicate<T> createValueProviderFilter
(ValueProvider<T, V> valueProvider, SerializablePredicate<V> valueFilter) Creates a new predicate from the given predicate and value provider.
static <T> DataProvider<T,
String> filteringByCaseInsensitiveString
(InMemoryDataProvider<T> dataProvider, ValueProvider<T, String> valueProvider, SerializableBiPredicate<String, String> predicate, SerializableSupplier<Locale> localeSupplier) Wraps a given data provider so that its filter tests the given predicate with the lower case string provided by the given value provider.
static <T,
V, Q> DataProvider<T, Q> filteringByIgnoreNull
(InMemoryDataProvider<T> dataProvider, ValueProvider<T, V> valueProvider, SerializableBiPredicate<V, Q> predicate) Wraps a given data provider so that its filter ignores null items returned by the given value provider.
static <V extends Comparable<? super V>>
Comparator<V>getNaturalSortComparator
(SortDirection sortDirection) Gets the natural order comparator for the type argument, or the natural order comparator reversed if the given sorting direction is
SortDirection.DESCENDING
.static <V extends Comparable<? super V>,
T>
SerializableComparator<T>propertyComparator
(ValueProvider<T, V> valueProvider, SortDirection sortDirection) Creates a comparator for the return type of the given
ValueProvider
, sorted in the direction specified by the givenSortDirection
.
-
Field Details
-
CURRENT_LOCALE_SUPPLIER
Supplier that attempts to resolve a locale from the current UI. Returns the system's default locale as a fallback.
-
-
Method Details
-
filteringByIgnoreNull
public static <T,V, DataProvider<T,Q> Q> filteringByIgnoreNull(InMemoryDataProvider<T> dataProvider, ValueProvider<T, V> valueProvider, SerializableBiPredicate<V, Q> predicate) Wraps a given data provider so that its filter ignores null items returned by the given value provider.
Type Parameters:
T
- the provided data typeQ
- the filter typeV
- the data provider object typeParameters:
dataProvider
- the data provider to wrapvalueProvider
- the value provider for providing values to filterpredicate
- the predicate to combine null filtering withReturns:
the wrapped data provider
-
filteringByCaseInsensitiveString
public static <T> DataProvider<T,String> filteringByCaseInsensitiveString(InMemoryDataProvider<T> dataProvider, ValueProvider<T, String> valueProvider, SerializableBiPredicate<String, String> predicate, SerializableSupplier<Locale> localeSupplier) Wraps a given data provider so that its filter tests the given predicate with the lower case string provided by the given value provider.
Type Parameters:
T
- the data provider object typeParameters:
dataProvider
- the data provider to wrapvalueProvider
- the value provider for providing string values to filterpredicate
- the predicate to use for comparing the resulting lower case stringslocaleSupplier
- the locale to use when converting strings to lower caseReturns:
the wrapped data provider
-
propertyComparator
public static <V extends Comparable<? super V>,T> SerializableComparator<T> propertyComparator(ValueProvider<T, V> valueProvider, SortDirection sortDirection) Creates a comparator for the return type of the given
ValueProvider
, sorted in the direction specified by the givenSortDirection
.Type Parameters:
T
- the data provider object typeV
- the provided value typeParameters:
valueProvider
- the value provider to usesortDirection
- the sort direction to useReturns:
the created comparator
-
getNaturalSortComparator
public static <V extends Comparable<? super V>> Comparator<V> getNaturalSortComparator(SortDirection sortDirection) Gets the natural order comparator for the type argument, or the natural order comparator reversed if the given sorting direction is
SortDirection.DESCENDING
.Type Parameters:
V
- the objects to compareParameters:
sortDirection
- the sort direction to useReturns:
the natural comparator, with ordering defined by the given sort direction
-
createValueProviderFilter
public static <T,V> SerializablePredicate<T> createValueProviderFilter(ValueProvider<T, V> valueProvider, SerializablePredicate<V> valueFilter) Creates a new predicate from the given predicate and value provider. This allows using a predicate of the value providers return type with objects of the value providers type.
Type Parameters:
T
- the data provider object typeV
- the provided value typeParameters:
valueProvider
- the value provider to usevalueFilter
- the original predicateReturns:
the created predicate
-
createEqualsFilter
public static <T,V> SerializablePredicate<T> createEqualsFilter(ValueProvider<T, V> valueProvider, V requiredValue) Creates a predicate that compares equality of the given required value to the value the given value provider obtains.
Type Parameters:
T
- the data provider object typeV
- the provided value typeParameters:
valueProvider
- the value provider to userequiredValue
- the required valueReturns:
the created predicate
-