Class ProductConfigAbstractRuleActionStrategy
- java.lang.Object
-
- de.hybris.platform.sap.productconfig.rules.action.strategy.impl.ProductConfigAbstractRuleActionStrategy
-
- All Implemented Interfaces:
ProductConfigRuleActionStrategy
- Direct Known Subclasses:
DisplayCsticReadonlyRuleActionStrategyImpl,DisplayMessageRuleActionStrategyImpl,DisplayPromoMessageRuleActionStrategyImpl,HideCsticRuleActionStrategyImpl,RemoveAssignableValueRuleActionStrategyImpl,SetCsticValueRuleActionStrategyImpl
public abstract class ProductConfigAbstractRuleActionStrategy extends java.lang.Object implements ProductConfigRuleActionStrategy
Abstract base class for all CPQ Rule Engine Strategy implementations.
Contains some boiler plate code required for every action strategy implementation, logging utilities and setter/getter for common bean dependencies.
-
-
Constructor Summary
Constructors Constructor Description ProductConfigAbstractRuleActionStrategy()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voidaddMessageToConfigModel(ConfigModel model, java.lang.String ruleMessageForCstic, java.lang.String ruleMessageForCsticValue, ProductConfigMessage productConfigMessage, CsticModel cstic, CsticValueModel csticValue)protected voidaddMessageToCsticValue(ProductConfigMessage productConfigMessage, CsticModel cstic, CsticValueModel csticValue)booleanapply(ConfigModel model, AbstractRuleActionRAO action)Applies the action described by the givenAbstractRuleActionRAO.protected ProductConfigMessagecreateMessage(java.lang.String code, java.lang.String messageFired, ProductConfigMessageSeverity severity)protected abstract booleanexecuteAction(ConfigModel model, AbstractRuleActionRAO action, java.util.Map<java.lang.String,CsticModel> csticMap)protected ConfigModelFactorygetConfigModelFactory()protected CsticModelgetCstic(ConfigModel model, AbstractRuleActionRAO action, java.util.Map<java.lang.String,CsticModel> csticMap)protected I18NServicegetI18NService()protected AbstractRuleEngineRuleModelgetRule(AbstractRuleActionRAO action)protected ProductConfigRuleActionStrategyCheckergetRuleActionChecker()protected RuleEngineServicegetRuleEngineService()protected RuleParametersServicegetRuleParametersService()protected ProductConfigRuleFormatTranslatorgetRulesFormator()protected ProductConfigRuleUtilgetRuleUtil()protected voidhandleMessage(ConfigModel model, AbstractRuleActionRAO action, java.util.Map<java.lang.String,CsticModel> csticMap)protected abstract booleanisActionPossible(ConfigModel model, AbstractRuleActionRAO action, java.util.Map<java.lang.String,CsticModel> csticMap)protected voidlogMessageData(AbstractRuleEngineRuleModel rule, java.lang.String csticName, java.lang.String csticValueName, ProductConfigMessage productConfigMessage)protected ProductConfigMessageSeveritymapSeverity(ProductConfigRuleMessageSeverity ruleMessageSeverity)protected booleanmessageContainsParameters(java.lang.String messageFired)protected java.lang.StringreplaceMessageParameters(java.lang.String messageFired, java.util.List<RuleParameterData> paramList)protected java.lang.StringresolveMessage(java.lang.String messageFired, java.lang.String code, java.lang.String params)protected CsticValueModelretrieveCsticValueModel(java.lang.String ruleMessageForCsticValue, CsticModel cstic)protected CsticValueModelretrieveCsticValueModelForRuleMessage(ConfigModel model, java.lang.String ruleMessageForCsticValue, java.lang.String code, CsticModel cstic, java.lang.String ruleMessageForCsticUpperCase)voidsetConfigModelFactory(ConfigModelFactory configModelFactory)voidsetI18NService(I18NService i18NService)voidsetRuleActionChecker(ProductConfigRuleActionStrategyChecker ruleActionChecker)voidsetRuleEngineService(RuleEngineService ruleEngineService)voidsetRuleParametersService(RuleParametersService ruleParametersService)voidsetRulesFormator(ProductConfigRuleFormatTranslator rulesFormator)voidsetRuleUtil(ProductConfigRuleUtil ruleUtil)protected voidshowMessage(ConfigModel model, java.util.Map<java.lang.String,CsticModel> csticMap, AbstractRuleEngineRuleModel rule, java.lang.String ruleMessageForCstic, java.lang.String ruleMessageForCsticValue, ProductConfigMessage productConfigMessage)
-
-
-
Method Detail
-
apply
public boolean apply(ConfigModel model, AbstractRuleActionRAO action)
Description copied from interface:ProductConfigRuleActionStrategyApplies the action described by the givenAbstractRuleActionRAO.- Specified by:
applyin interfaceProductConfigRuleActionStrategy- Parameters:
model- product configuration model to be adjustedaction- the action to apply- Returns:
- true if model is adjusted
-
handleMessage
protected void handleMessage(ConfigModel model, AbstractRuleActionRAO action, java.util.Map<java.lang.String,CsticModel> csticMap)
-
getRule
protected AbstractRuleEngineRuleModel getRule(AbstractRuleActionRAO action)
-
resolveMessage
protected java.lang.String resolveMessage(java.lang.String messageFired, java.lang.String code, java.lang.String params)
-
retrieveCsticValueModel
protected CsticValueModel retrieveCsticValueModel(java.lang.String ruleMessageForCsticValue, CsticModel cstic)
-
logMessageData
protected void logMessageData(AbstractRuleEngineRuleModel rule, java.lang.String csticName, java.lang.String csticValueName, ProductConfigMessage productConfigMessage)
-
mapSeverity
protected ProductConfigMessageSeverity mapSeverity(ProductConfigRuleMessageSeverity ruleMessageSeverity)
-
messageContainsParameters
protected boolean messageContainsParameters(java.lang.String messageFired)
-
replaceMessageParameters
protected java.lang.String replaceMessageParameters(java.lang.String messageFired, java.util.List<RuleParameterData> paramList)
-
createMessage
protected ProductConfigMessage createMessage(java.lang.String code, java.lang.String messageFired, ProductConfigMessageSeverity severity)
-
getCstic
protected CsticModel getCstic(ConfigModel model, AbstractRuleActionRAO action, java.util.Map<java.lang.String,CsticModel> csticMap)
-
getRuleActionChecker
protected ProductConfigRuleActionStrategyChecker getRuleActionChecker()
-
setRuleActionChecker
public void setRuleActionChecker(ProductConfigRuleActionStrategyChecker ruleActionChecker)
- Parameters:
ruleActionChecker-
-
getRulesFormator
protected ProductConfigRuleFormatTranslator getRulesFormator()
-
setRulesFormator
public void setRulesFormator(ProductConfigRuleFormatTranslator rulesFormator)
- Parameters:
rulesFormator-
-
getRuleEngineService
protected RuleEngineService getRuleEngineService()
-
setRuleEngineService
public void setRuleEngineService(RuleEngineService ruleEngineService)
- Parameters:
ruleEngineService-
-
getConfigModelFactory
protected ConfigModelFactory getConfigModelFactory()
-
setConfigModelFactory
public void setConfigModelFactory(ConfigModelFactory configModelFactory)
- Parameters:
configModelFactory-
-
getI18NService
protected I18NService getI18NService()
-
setI18NService
public void setI18NService(I18NService i18NService)
- Parameters:
i18NService-
-
getRuleParametersService
protected RuleParametersService getRuleParametersService()
-
setRuleParametersService
public void setRuleParametersService(RuleParametersService ruleParametersService)
- Parameters:
ruleParametersService-
-
getRuleUtil
protected ProductConfigRuleUtil getRuleUtil()
-
setRuleUtil
public void setRuleUtil(ProductConfigRuleUtil ruleUtil)
- Parameters:
ruleUtil-
-
executeAction
protected abstract boolean executeAction(ConfigModel model, AbstractRuleActionRAO action, java.util.Map<java.lang.String,CsticModel> csticMap)
-
isActionPossible
protected abstract boolean isActionPossible(ConfigModel model, AbstractRuleActionRAO action, java.util.Map<java.lang.String,CsticModel> csticMap)
-
showMessage
protected void showMessage(ConfigModel model, java.util.Map<java.lang.String,CsticModel> csticMap, AbstractRuleEngineRuleModel rule, java.lang.String ruleMessageForCstic, java.lang.String ruleMessageForCsticValue, ProductConfigMessage productConfigMessage)
-
addMessageToConfigModel
protected void addMessageToConfigModel(ConfigModel model, java.lang.String ruleMessageForCstic, java.lang.String ruleMessageForCsticValue, ProductConfigMessage productConfigMessage, CsticModel cstic, CsticValueModel csticValue)
-
addMessageToCsticValue
protected void addMessageToCsticValue(ProductConfigMessage productConfigMessage, CsticModel cstic, CsticValueModel csticValue)
-
retrieveCsticValueModelForRuleMessage
protected CsticValueModel retrieveCsticValueModelForRuleMessage(ConfigModel model, java.lang.String ruleMessageForCsticValue, java.lang.String code, CsticModel cstic, java.lang.String ruleMessageForCsticUpperCase)
-
-