Class AbstractExpandedRAOProvider<T,R>
- java.lang.Object
-
- de.hybris.platform.ruleengineservices.rao.providers.impl.AbstractExpandedRAOProvider<T,R>
-
- All Implemented Interfaces:
ExpandedRAOProvider<T>
,RAOProvider<T>
,org.springframework.beans.factory.InitializingBean
- Direct Known Subclasses:
AbstractExpandedRAOProviderUnitTest.MockExpandedRAOProvider
,DefaultCartRAOProvider
,DefaultProductRAOProvider
public abstract class AbstractExpandedRAOProvider<T,R> extends java.lang.Object implements ExpandedRAOProvider<T>, org.springframework.beans.factory.InitializingBean
The abstract class encapsulates logic to support RAO expansion processing options.
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Collection<java.lang.String>
defaultOptions
protected java.util.Collection<java.lang.String>
minOptions
protected java.util.Collection<java.lang.String>
validOptions
-
Constructor Summary
Constructors Constructor Description AbstractExpandedRAOProvider()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected java.util.Set<java.lang.String>
addExtraDefaultOptions(java.util.List<RAOFactsExtractor> raoExtractorList)
protected java.util.Set<java.lang.String>
addExtraMinOptions(java.util.List<RAOFactsExtractor> raoExtractorList)
protected void
addExtraRAOFacts(java.util.Set expandedFactsSet, R raoFact, java.util.Collection<java.lang.String> filteredOptions)
protected java.util.Set<java.lang.String>
addExtraValidOptions(java.util.List<RAOFactsExtractor> raoExtractorList)
protected void
addOptionConsumers(RAOFactsExtractor raoFactsExtractor)
void
afterPropertiesSet()
protected abstract R
createRAO(T modelFact)
java.util.Set
expandFactModel(T modelFact)
java.util.Set
expandFactModel(T modelFact, java.util.Collection<java.lang.String> options)
protected java.util.Set<java.lang.Object>
expandRAO(R rao, java.util.Collection<java.lang.String> options)
protected java.util.Collection<java.lang.String>
getConcurrentlySafeOptions(java.util.Collection<java.lang.String> options)
protected java.util.Optional<java.util.function.BiConsumer<java.util.Set<java.lang.Object>,R>>
getConsumer(java.lang.String option)
protected java.util.Map<java.lang.String,java.util.function.BiConsumer<java.util.Set<java.lang.Object>,R>>
getConsumerMap()
protected java.util.Collection<java.lang.String>
getDefaultOptions()
protected java.util.List<RAOFactsExtractor>
getFactExtractorList()
protected java.util.Collection<java.lang.String>
getFilteredOptions(java.util.Collection<java.lang.String> options)
protected java.util.Collection<java.lang.String>
getMinOptions()
protected java.util.Collection<java.lang.String>
getValidOptions()
protected void
populateRaoFactsExtractorConsumers()
void
setConsumerMap(java.util.Map<java.lang.String,java.util.function.BiConsumer<java.util.Set<java.lang.Object>,R>> consumerMap)
void
setFactExtractorList(java.util.List<RAOFactsExtractor> factExtractorList)
-
-
-
Method Detail
-
expandFactModel
public java.util.Set expandFactModel(T modelFact)
- Specified by:
expandFactModel
in interfaceRAOProvider<T>
-
expandFactModel
public java.util.Set expandFactModel(T modelFact, java.util.Collection<java.lang.String> options)
- Specified by:
expandFactModel
in interfaceExpandedRAOProvider<T>
-
afterPropertiesSet
public void afterPropertiesSet() throws java.lang.Exception
- Specified by:
afterPropertiesSet
in interfaceorg.springframework.beans.factory.InitializingBean
- Throws:
java.lang.Exception
-
populateRaoFactsExtractorConsumers
protected void populateRaoFactsExtractorConsumers()
-
addExtraRAOFacts
protected void addExtraRAOFacts(java.util.Set expandedFactsSet, R raoFact, java.util.Collection<java.lang.String> filteredOptions)
-
addOptionConsumers
protected void addOptionConsumers(RAOFactsExtractor raoFactsExtractor)
-
getConsumer
protected java.util.Optional<java.util.function.BiConsumer<java.util.Set<java.lang.Object>,R>> getConsumer(java.lang.String option)
-
expandRAO
protected java.util.Set<java.lang.Object> expandRAO(R rao, java.util.Collection<java.lang.String> options)
-
getFilteredOptions
protected java.util.Collection<java.lang.String> getFilteredOptions(java.util.Collection<java.lang.String> options)
-
addExtraValidOptions
protected java.util.Set<java.lang.String> addExtraValidOptions(java.util.List<RAOFactsExtractor> raoExtractorList)
-
addExtraDefaultOptions
protected java.util.Set<java.lang.String> addExtraDefaultOptions(java.util.List<RAOFactsExtractor> raoExtractorList)
-
addExtraMinOptions
protected java.util.Set<java.lang.String> addExtraMinOptions(java.util.List<RAOFactsExtractor> raoExtractorList)
-
getFactExtractorList
protected java.util.List<RAOFactsExtractor> getFactExtractorList()
-
setFactExtractorList
public void setFactExtractorList(java.util.List<RAOFactsExtractor> factExtractorList)
-
getDefaultOptions
protected java.util.Collection<java.lang.String> getDefaultOptions()
-
getValidOptions
protected java.util.Collection<java.lang.String> getValidOptions()
-
getMinOptions
protected java.util.Collection<java.lang.String> getMinOptions()
-
getConcurrentlySafeOptions
protected java.util.Collection<java.lang.String> getConcurrentlySafeOptions(java.util.Collection<java.lang.String> options)
-
setConsumerMap
public void setConsumerMap(java.util.Map<java.lang.String,java.util.function.BiConsumer<java.util.Set<java.lang.Object>,R>> consumerMap)
-
getConsumerMap
protected java.util.Map<java.lang.String,java.util.function.BiConsumer<java.util.Set<java.lang.Object>,R>> getConsumerMap()
-
-