Class DefaultCxDaoStrategySelector
- java.lang.Object
-
- de.hybris.platform.personalizationservices.dao.impl.DefaultCxDaoStrategySelector
-
- All Implemented Interfaces:
CxDaoStrategySelector
public class DefaultCxDaoStrategySelector extends java.lang.Object implements CxDaoStrategySelector
-
-
Constructor Summary
Constructors Constructor Description DefaultCxDaoStrategySelector()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected <T> voidaddToList(java.util.List<T> list, T t, java.util.Comparator<? super T> comp)protected <T> java.util.stream.Collector<T,java.util.List<T>,java.util.Optional<T>>bestStrategyCollector(java.util.Comparator<? super T> comp)protected <T> java.util.Optional<T>finalizeSelection(java.util.List<T> results)protected booleanisValid(CxDaoStrategy strategy, java.util.Set<java.lang.String> keySet)protected <T> java.util.List<T>selectBestList(java.util.List<T> list1, java.util.List<T> list2, java.util.Comparator<? super T> comp)java.util.Optional<CxDaoStrategy>selectStrategy(java.util.Collection<? extends CxDaoStrategy> strategies, java.util.Map<java.lang.String,java.lang.String> params)Basing on provided parameters will return valid strategy from collection of provided strategies.protected intstrategyComparator(CxDaoStrategy a, CxDaoStrategy b)
-
-
-
Method Detail
-
selectStrategy
public java.util.Optional<CxDaoStrategy> selectStrategy(java.util.Collection<? extends CxDaoStrategy> strategies, java.util.Map<java.lang.String,java.lang.String> params)
Description copied from interface:CxDaoStrategySelectorBasing on provided parameters will return valid strategy from collection of provided strategies.- Specified by:
selectStrategyin interfaceCxDaoStrategySelector- Parameters:
strategies- from which result will be selectedparams- parameters taken into consideration during selection- Returns:
- Optional.empty if no valid strategy was found or valid strategy.
-
isValid
protected boolean isValid(CxDaoStrategy strategy, java.util.Set<java.lang.String> keySet)
-
strategyComparator
protected int strategyComparator(CxDaoStrategy a, CxDaoStrategy b)
-
bestStrategyCollector
protected <T> java.util.stream.Collector<T,java.util.List<T>,java.util.Optional<T>> bestStrategyCollector(java.util.Comparator<? super T> comp)
-
addToList
protected <T> void addToList(java.util.List<T> list, T t, java.util.Comparator<? super T> comp)
-
selectBestList
protected <T> java.util.List<T> selectBestList(java.util.List<T> list1, java.util.List<T> list2, java.util.Comparator<? super T> comp)
-
finalizeSelection
protected <T> java.util.Optional<T> finalizeSelection(java.util.List<T> results)
-
-