diff --git a/easy-rules-support/src/main/java/org/jeasy/rules/support/AbstractRuleFactory.java b/easy-rules-support/src/main/java/org/jeasy/rules/support/AbstractRuleFactory.java index e969805..9e084a6 100644 --- a/easy-rules-support/src/main/java/org/jeasy/rules/support/AbstractRuleFactory.java +++ b/easy-rules-support/src/main/java/org/jeasy/rules/support/AbstractRuleFactory.java @@ -24,6 +24,8 @@ package org.jeasy.rules.support; import org.jeasy.rules.api.Rule; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.util.Arrays; import java.util.List; @@ -37,6 +39,8 @@ import java.util.List; */ public abstract class AbstractRuleFactory { + private static final Logger LOGGER = LoggerFactory.getLogger(AbstractRuleFactory.class); + private static final List ALLOWED_COMPOSITE_RULE_TYPES = Arrays.asList( UnitRuleGroup.class.getSimpleName(), ConditionalRuleGroup.class.getSimpleName(), @@ -54,6 +58,20 @@ public abstract class AbstractRuleFactory { protected abstract Rule createSimpleRule(RuleDefinition ruleDefinition, C parserContext); protected Rule createCompositeRule(RuleDefinition ruleDefinition, C parserContext) { + if (ruleDefinition.getCondition() != null) { + LOGGER.warn( + "Condition '{}' in composite rule '{}' of type {} will be ignored.", + ruleDefinition.getCondition(), + ruleDefinition.getName(), + ruleDefinition.getCompositeRuleType()); + } + if (ruleDefinition.getActions() != null && !ruleDefinition.getActions().isEmpty()) { + LOGGER.warn( + "Actions '{}' in composite rule '{}' of type {} will be ignored.", + ruleDefinition.getActions(), + ruleDefinition.getName(), + ruleDefinition.getCompositeRuleType()); + } CompositeRule compositeRule; String name = ruleDefinition.getName(); switch (ruleDefinition.getCompositeRuleType()) {