Class DefaultRuleService
- java.lang.Object
-
- de.hybris.platform.ruleengineservices.rule.services.impl.DefaultRuleService
-
- All Implemented Interfaces:
RuleService
public class DefaultRuleService extends java.lang.Object implements RuleService
Default Implementation ofRuleService
-
-
Constructor Summary
Constructors Constructor Description DefaultRuleService()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AbstractRuleModelcloneRule(AbstractRuleModel source)Clones given rule.AbstractRuleModelcloneRule(java.lang.String newRuleCode, AbstractRuleModel source)Clones given rule with the specified code for new rule.<T extends AbstractRuleModel>
TcreateRuleFromTemplate(AbstractRuleTemplateModel ruleTemplate)Creates new rule from given rule template.<T extends AbstractRuleModel>
TcreateRuleFromTemplate(java.lang.String newRuleCode, AbstractRuleTemplateModel ruleTemplate)Creates new rule from given rule template.<T extends AbstractRuleModel>
java.util.List<T>getActiveRulesForCatalogVersionAndRuleType(CatalogVersionModel catalogVersion, RuleType ruleType)Gets activeAbstractRuleModels by catalog version and rule type<T extends AbstractRuleModel>
java.util.List<T>getAllActiveRules()Gets all activeAbstractRuleModelsjava.util.List<AbstractRuleModel>getAllActiveRulesForType(java.lang.Class ruleType)Gets all activeAbstractRuleModels by a specific type<T extends AbstractRuleModel>
java.util.List<T>getAllRules()Gets allAbstractRuleModels<T extends AbstractRuleModel>
java.util.List<T>getAllRulesForCode(java.lang.String code)Gets all versions ofAbstractRuleModelby code.<T extends AbstractRuleModel>
java.util.List<T>getAllRulesForCodeAndStatus(java.lang.String code, RuleStatus... ruleStatuses)Gets all versions ofAbstractRuleModelby code and status<T extends AbstractRuleModel>
java.util.List<T>getAllRulesForStatus(RuleStatus... ruleStatuses)Gets all versions ofAbstractRuleModelby status<T extends AbstractRuleModel>
java.util.List<T>getAllRulesForType(java.lang.Class ruleType)Gets allAbstractRuleModels by a specific typeprotected CommonI18NServicegetCommonI18NService()EngineRuleDaogetEngineRuleDao()RuleTypegetEngineRuleTypeForRuleType(java.lang.Class<?> type)Finds engine rule type for given rule type.protected ModelServicegetModelService()protected ModuleVersionResolver<DroolsKIEModuleModel>getModuleVersionResolver()protected RuleDaogetRuleDao()protected RuleEngineContextFinderStrategygetRuleEngineContextFinderStrategy()AbstractRuleModelgetRuleForCode(java.lang.String code)Gets the latest version ofAbstractRuleModelby code.java.lang.Class<? extends AbstractRuleModel>getRuleTypeFromTemplate(java.lang.Class<? extends AbstractRuleTemplateModel> templateType)Finds and returns rule type model class based on the template typeprotected RuleTypeMappingStrategygetRuleTypeMappingStrategy()protected KeyGeneratorgetSourceRuleCodeGenerator()voidsetCommonI18NService(CommonI18NService commonI18NService)voidsetEngineRuleDao(EngineRuleDao engineRuleDao)voidsetModelService(ModelService modelService)voidsetModuleVersionResolver(ModuleVersionResolver<DroolsKIEModuleModel> moduleVersionResolver)voidsetRuleDao(RuleDao ruleDao)voidsetRuleEngineContextFinderStrategy(RuleEngineContextFinderStrategy ruleEngineContextFinderStrategy)voidsetRuleTypeMappingStrategy(RuleTypeMappingStrategy ruleTypeMappingStrategy)voidsetSourceRuleCodeGenerator(KeyGenerator sourceRuleCodeGenerator)
-
-
-
Method Detail
-
getAllRules
public <T extends AbstractRuleModel> java.util.List<T> getAllRules()
Description copied from interface:RuleServiceGets allAbstractRuleModels- Specified by:
getAllRulesin interfaceRuleService- Returns:
- List of
AbstractRuleModels
-
getAllRulesForType
public <T extends AbstractRuleModel> java.util.List<T> getAllRulesForType(java.lang.Class ruleType)
Description copied from interface:RuleServiceGets allAbstractRuleModels by a specific type- Specified by:
getAllRulesForTypein interfaceRuleService- Parameters:
ruleType- Defines which type of rules should be included in the results- Returns:
- List of
AbstractRuleModels
-
getAllActiveRules
public <T extends AbstractRuleModel> java.util.List<T> getAllActiveRules()
Description copied from interface:RuleServiceGets all activeAbstractRuleModels- Specified by:
getAllActiveRulesin interfaceRuleService- Returns:
- List of
AbstractRuleModels
-
getAllActiveRulesForType
public java.util.List<AbstractRuleModel> getAllActiveRulesForType(java.lang.Class ruleType)
Description copied from interface:RuleServiceGets all activeAbstractRuleModels by a specific type- Specified by:
getAllActiveRulesForTypein interfaceRuleService- Parameters:
ruleType- Defines which type of rules should be included in the results- Returns:
- List of
AbstractRuleModels
-
getActiveRulesForCatalogVersionAndRuleType
public <T extends AbstractRuleModel> java.util.List<T> getActiveRulesForCatalogVersionAndRuleType(CatalogVersionModel catalogVersion, RuleType ruleType)
Description copied from interface:RuleServiceGets activeAbstractRuleModels by catalog version and rule type- Specified by:
getActiveRulesForCatalogVersionAndRuleTypein interfaceRuleService- Type Parameters:
T- Specifies type which will get returned by method- Parameters:
catalogVersion- A catalog version which is used to filter out resultsruleType- A rule type which is used to filter out results- Returns:
- List of
AbstractRuleModels or empty list if not found
-
getRuleForCode
public AbstractRuleModel getRuleForCode(java.lang.String code)
Description copied from interface:RuleServiceGets the latest version ofAbstractRuleModelby code.- Specified by:
getRuleForCodein interfaceRuleService- Parameters:
code- Rule's code to find- Returns:
AbstractRuleModelor null if not found
-
getAllRulesForCode
public <T extends AbstractRuleModel> java.util.List<T> getAllRulesForCode(java.lang.String code)
Description copied from interface:RuleServiceGets all versions ofAbstractRuleModelby code.- Specified by:
getAllRulesForCodein interfaceRuleService- Parameters:
code- Rule's code to find- Returns:
- List of
AbstractRuleModels
-
getAllRulesForCodeAndStatus
public <T extends AbstractRuleModel> java.util.List<T> getAllRulesForCodeAndStatus(java.lang.String code, RuleStatus... ruleStatuses)
Description copied from interface:RuleServiceGets all versions ofAbstractRuleModelby code and status- Specified by:
getAllRulesForCodeAndStatusin interfaceRuleService- Parameters:
code- Rule's code to findruleStatuses- Rules statuses that are allowed in the results- Returns:
- List of
AbstractRuleModels
-
getAllRulesForStatus
public <T extends AbstractRuleModel> java.util.List<T> getAllRulesForStatus(RuleStatus... ruleStatuses)
Description copied from interface:RuleServiceGets all versions ofAbstractRuleModelby status- Specified by:
getAllRulesForStatusin interfaceRuleService- Parameters:
ruleStatuses- Rules statuses that are allowed in the results- Returns:
- List of
AbstractRuleModels
-
createRuleFromTemplate
public <T extends AbstractRuleModel> T createRuleFromTemplate(AbstractRuleTemplateModel ruleTemplate)
Description copied from interface:RuleServiceCreates new rule from given rule template.- Specified by:
createRuleFromTemplatein interfaceRuleService- Parameters:
ruleTemplate- - rule template to clone to new rule- Returns:
- the new rule, which is a copy of the given template.
-
createRuleFromTemplate
public <T extends AbstractRuleModel> T createRuleFromTemplate(java.lang.String newRuleCode, AbstractRuleTemplateModel ruleTemplate)
Description copied from interface:RuleServiceCreates new rule from given rule template.- Specified by:
createRuleFromTemplatein interfaceRuleService- Parameters:
newRuleCode- - new rule coderuleTemplate- - rule template to clone to new rule- Returns:
- the new rule, which is a copy of the given template.
-
cloneRule
public AbstractRuleModel cloneRule(AbstractRuleModel source)
Description copied from interface:RuleServiceClones given rule.- Specified by:
cloneRulein interfaceRuleService- Parameters:
source- - rule to clone- Returns:
- target - cloned rule
-
cloneRule
public AbstractRuleModel cloneRule(java.lang.String newRuleCode, AbstractRuleModel source)
Description copied from interface:RuleServiceClones given rule with the specified code for new rule.- Specified by:
cloneRulein interfaceRuleService- Parameters:
newRuleCode- - new rule codesource- - rule to clone- Returns:
- target - cloned rule
-
getRuleTypeFromTemplate
public java.lang.Class<? extends AbstractRuleModel> getRuleTypeFromTemplate(java.lang.Class<? extends AbstractRuleTemplateModel> templateType)
Description copied from interface:RuleServiceFinds and returns rule type model class based on the template type- Specified by:
getRuleTypeFromTemplatein interfaceRuleService- Parameters:
templateType- - template type- Returns:
- rule type model
-
getEngineRuleTypeForRuleType
public RuleType getEngineRuleTypeForRuleType(java.lang.Class<?> type)
Description copied from interface:RuleServiceFinds engine rule type for given rule type. If no mapping is found it returns RuleType.DEFAULT.- Specified by:
getEngineRuleTypeForRuleTypein interfaceRuleService- Parameters:
type- - type of the rule.- Returns:
- RuleType of the engine rule
-
getRuleDao
protected RuleDao getRuleDao()
-
setRuleDao
public void setRuleDao(RuleDao ruleDao)
-
getEngineRuleDao
public EngineRuleDao getEngineRuleDao()
-
setEngineRuleDao
public void setEngineRuleDao(EngineRuleDao engineRuleDao)
-
getModelService
protected ModelService getModelService()
-
setModelService
public void setModelService(ModelService modelService)
-
getSourceRuleCodeGenerator
protected KeyGenerator getSourceRuleCodeGenerator()
-
setSourceRuleCodeGenerator
public void setSourceRuleCodeGenerator(KeyGenerator sourceRuleCodeGenerator)
-
getCommonI18NService
protected CommonI18NService getCommonI18NService()
-
setCommonI18NService
public void setCommonI18NService(CommonI18NService commonI18NService)
-
getRuleTypeMappingStrategy
protected RuleTypeMappingStrategy getRuleTypeMappingStrategy()
-
setRuleTypeMappingStrategy
public void setRuleTypeMappingStrategy(RuleTypeMappingStrategy ruleTypeMappingStrategy)
-
getModuleVersionResolver
protected ModuleVersionResolver<DroolsKIEModuleModel> getModuleVersionResolver()
-
setModuleVersionResolver
public void setModuleVersionResolver(ModuleVersionResolver<DroolsKIEModuleModel> moduleVersionResolver)
-
getRuleEngineContextFinderStrategy
protected RuleEngineContextFinderStrategy getRuleEngineContextFinderStrategy()
-
setRuleEngineContextFinderStrategy
public void setRuleEngineContextFinderStrategy(RuleEngineContextFinderStrategy ruleEngineContextFinderStrategy)
-
-