Interface RuleService
-
- All Known Implementing Classes:
DefaultRuleService
public interface RuleServiceThe interface provides with method for fetching all rules available.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated 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 activeAbstractRuleModels<T extends AbstractRuleModel>
java.util.List<T>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 type<T extends AbstractRuleModel>
java.util.List<T>getAllToBePublishedRules()Deprecated, for removal: This API element is subject to removal in a future version.since 1811<T extends AbstractRuleModel>
java.util.List<T>getAllToBePublishedRulesForType(java.lang.Class ruleType)Deprecated, for removal: This API element is subject to removal in a future version.since 1811RuleTypegetEngineRuleTypeForRuleType(java.lang.Class<?> type)Finds engine rule type for given rule type.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 type
-
-
-
Method Detail
-
getAllRules
<T extends AbstractRuleModel> java.util.List<T> getAllRules()
Gets allAbstractRuleModels- Returns:
- List of
AbstractRuleModels
-
getAllRulesForType
<T extends AbstractRuleModel> java.util.List<T> getAllRulesForType(java.lang.Class ruleType)
Gets allAbstractRuleModels by a specific type- Parameters:
ruleType- Defines which type of rules should be included in the results- Returns:
- List of
AbstractRuleModels
-
getAllActiveRules
<T extends AbstractRuleModel> java.util.List<T> getAllActiveRules()
Gets all activeAbstractRuleModels- Returns:
- List of
AbstractRuleModels
-
getAllActiveRulesForType
<T extends AbstractRuleModel> java.util.List<T> getAllActiveRulesForType(java.lang.Class ruleType)
Gets all activeAbstractRuleModels by a specific type- Parameters:
ruleType- Defines which type of rules should be included in the results- Returns:
- List of
AbstractRuleModels
-
getAllToBePublishedRules
@Deprecated(since="1811", forRemoval=true) <T extends AbstractRuleModel> java.util.List<T> getAllToBePublishedRules()Deprecated, for removal: This API element is subject to removal in a future version.since 1811Gets all rules to be publishedAbstractRuleModels- Returns:
- List of
AbstractRuleModels
-
getAllToBePublishedRulesForType
@Deprecated(since="1811", forRemoval=true) <T extends AbstractRuleModel> java.util.List<T> getAllToBePublishedRulesForType(java.lang.Class ruleType)Deprecated, for removal: This API element is subject to removal in a future version.since 1811Gets all rules to be publishedAbstractRuleModels by a specific type- Parameters:
ruleType- Defines which type of rules should be included in the results- Returns:
- List of
AbstractRuleModels
-
getActiveRulesForCatalogVersionAndRuleType
<T extends AbstractRuleModel> java.util.List<T> getActiveRulesForCatalogVersionAndRuleType(CatalogVersionModel catalogVersion, RuleType ruleType)
Gets activeAbstractRuleModels by catalog version and rule type- 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
AbstractRuleModel getRuleForCode(java.lang.String code)
Gets the latest version ofAbstractRuleModelby code.- Parameters:
code- Rule's code to find- Returns:
AbstractRuleModelor null if not found
-
getAllRulesForCode
<T extends AbstractRuleModel> java.util.List<T> getAllRulesForCode(java.lang.String code)
Gets all versions ofAbstractRuleModelby code.- Parameters:
code- Rule's code to find- Returns:
- List of
AbstractRuleModels
-
getAllRulesForCodeAndStatus
<T extends AbstractRuleModel> java.util.List<T> getAllRulesForCodeAndStatus(java.lang.String code, RuleStatus... ruleStatuses)
Gets all versions ofAbstractRuleModelby code and status- Parameters:
code- Rule's code to findruleStatuses- Rules statuses that are allowed in the results- Returns:
- List of
AbstractRuleModels
-
getAllRulesForStatus
<T extends AbstractRuleModel> java.util.List<T> getAllRulesForStatus(RuleStatus... ruleStatuses)
Gets all versions ofAbstractRuleModelby status- Parameters:
ruleStatuses- Rules statuses that are allowed in the results- Returns:
- List of
AbstractRuleModels
-
createRuleFromTemplate
<T extends AbstractRuleModel> T createRuleFromTemplate(AbstractRuleTemplateModel ruleTemplate)
Creates new rule from given rule template.- Parameters:
ruleTemplate- - rule template to clone to new rule- Returns:
- the new rule, which is a copy of the given template.
-
createRuleFromTemplate
<T extends AbstractRuleModel> T createRuleFromTemplate(java.lang.String newRuleCode, AbstractRuleTemplateModel ruleTemplate)
Creates new rule from given rule template.- 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
AbstractRuleModel cloneRule(AbstractRuleModel source)
Clones given rule.- Parameters:
source- - rule to clone- Returns:
- target - cloned rule
-
cloneRule
AbstractRuleModel cloneRule(java.lang.String newRuleCode, AbstractRuleModel source)
Clones given rule with the specified code for new rule.- Parameters:
newRuleCode- - new rule codesource- - rule to clone- Returns:
- target - cloned rule
-
getRuleTypeFromTemplate
java.lang.Class<? extends AbstractRuleModel> getRuleTypeFromTemplate(java.lang.Class<? extends AbstractRuleTemplateModel> templateType)
Finds and returns rule type model class based on the template type- Parameters:
templateType- - template type- Returns:
- rule type model
-
getEngineRuleTypeForRuleType
RuleType getEngineRuleTypeForRuleType(java.lang.Class<?> type)
Finds engine rule type for given rule type. If no mapping is found it returns RuleType.DEFAULT.- Parameters:
type- - type of the rule.- Returns:
- RuleType of the engine rule
-
-