Hello list, I have a rule that generally speaking looks like this :
rule "ABC" when $f : FilteringStateConnector($campaignId : campaignId) $campaign : Campaign(code == $campaignId ,$limitTypeEnum : limitTypeEnum, $limitByEventType : limitByEventType) // Check Budget limit pass conditions: ( eval(BooleanLogging.trace(log, "DEBUG: " + ($limitTypeEnum == ENUM1.BudgetLimitFlag))) and eval(BooleanLogging.trace(log, "DEBUG: Always here, right now")) and eval(BooleanLogging.trace(log, "DEBUG: " + ($limitByEventType == ENUM2._2_EXPOSED))) and Campaign(code == $campaignId, limitTypeEnum == ENUM1.BudgetLimitFlag, limitByEventType == ENUM2._2_EXPOSED) and eval(BooleanLogging.trace(log, "DEBUG: Right here, right now")) ) or ( ... ) then ... end The line """ eval(BooleanLogging.trace(log, "DEBUG: " + ($limitTypeEnum == ENUM1.BudgetLimitFlag))) """ evaluates to "true" in the logs. The line """ eval(BooleanLogging.trace(log, "DEBUG: " + ($limitByEventType == ENUM2._2_EXPOSED))) """ as well. These are java (eval) checks for truth. If I try to use Drools to gain the rete optimization by writing : """ Campaign(code == $campaignId, limitTypeEnum == ENUM1.BudgetLimitFlag, limitByEventType == ENUM2._2_EXPOSED) """, It never reachers past that line. why is that? Can't Drools 3 check for truthness of Enum conditionals ? I would love to supply more information if required. Help is highly appreciated, Maxim. -- Cheers, Maxim Veksler "Free as in Freedom" - Do u GNU ?
_______________________________________________ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users