public class InMemoryDataProviderHelpers extends Object
InMemoryDataProvider
s.
This class is intended primarily for internal use.
Modifier and Type | Field and Description |
---|---|
static SerializableSupplier<Locale> |
CURRENT_LOCALE_SUPPLIER
Supplier that attempts to resolve a locale from the current UI.
|
Modifier and Type | Method and Description |
---|---|
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.
|
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>> |
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> |
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 given
SortDirection . |
public static final SerializableSupplier<Locale> CURRENT_LOCALE_SUPPLIER
public static <T,V,Q> DataProvider<T,Q> filteringByIgnoreNull(InMemoryDataProvider<T> dataProvider, ValueProvider<T,V> valueProvider, SerializableBiPredicate<V,Q> predicate)
T
- the provided data typeQ
- the filter typeV
- the data provider object typedataProvider
- the data provider to wrapvalueProvider
- the value provider for providing values to filterpredicate
- the predicate to combine null filtering withpublic static <T> DataProvider<T,String> filteringByCaseInsensitiveString(InMemoryDataProvider<T> dataProvider, ValueProvider<T,String> valueProvider, SerializableBiPredicate<String,String> predicate, SerializableSupplier<Locale> localeSupplier)
T
- the data provider object typedataProvider
- 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 casepublic static <V extends Comparable<? super V>,T> SerializableComparator<T> propertyComparator(ValueProvider<T,V> valueProvider, SortDirection sortDirection)
ValueProvider
, sorted in the direction specified by the given
SortDirection
.T
- the data provider object typeV
- the provided value typevalueProvider
- the value provider to usesortDirection
- the sort direction to usepublic static <V extends Comparable<? super V>> Comparator<V> getNaturalSortComparator(SortDirection sortDirection)
SortDirection.DESCENDING
.V
- the objects to comparesortDirection
- the sort direction to usepublic static <T,V> SerializablePredicate<T> createValueProviderFilter(ValueProvider<T,V> valueProvider, SerializablePredicate<V> valueFilter)
T
- the data provider object typeV
- the provided value typevalueProvider
- the value provider to usevalueFilter
- the original predicatepublic static <T,V> SerializablePredicate<T> createEqualsFilter(ValueProvider<T,V> valueProvider, V requiredValue)
T
- the data provider object typeV
- the provided value typevalueProvider
- the value provider to userequiredValue
- the required valueCopyright © 2023. All rights reserved.