com.ibm.websphere.brb.implementor
Class RuleOR
java.lang.Object
|
+--com.ibm.websphere.brb.implementor.RuleOR
- All Implemented Interfaces:
- RuleImplementor
- public class RuleOR
- extends java.lang.Object
- implements RuleImplementor
Combination rule comprised of two or more constraint-type rules which are all fired
and their results or'd together. The dependent rules may return either ConstaintReturn
or java.lang.Boolean. Note that the algorithm does not short-circuit evaluation when the
first true result is encountered. All dependent rules are triggered regardless of the results.
When triggering a dependent rule, if more than one rule is found with the same name,
then all rules with that name will be triggered and their results will be ored together.
Constructor Summary |
RuleOR()
Parameterless constructor for RuleOR. |
Method Summary |
java.lang.Object |
fire(TriggerPoint tp,
java.lang.Object target,
IRuleCopy rule,
java.lang.Object[] parms)
Fires all dependent rules, or'ing the ConstraintReturn results together. |
java.lang.String |
getDescription()
The programmer's description of what the algorithm does. |
void |
init(java.lang.Object[] parms,
java.lang.String[] dependentRules,
java.lang.String userDefinedData,
IRuleCopy rule)
Initializes with persistent parameters used by this rule. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
dependentRules
protected java.lang.String[] dependentRules
RuleOR
public RuleOR()
- Parameterless constructor for RuleOR.
fire
public java.lang.Object fire(TriggerPoint tp,
java.lang.Object target,
IRuleCopy rule,
java.lang.Object[] parms)
throws BusinessRuleBeansException
- Fires all dependent rules, or'ing the ConstraintReturn results together. The dependent rules
may return either ConstraintReturn or java.lang.Boolean. A true ConstraintReturn is returned
if any one of the dependent rules return true. Otherwise a false ConstraintReturn is returned
holding information about each of the dependent rules that returned a failing ConstraintReturn.
Note that the algorithm does not short-circuit evaluation when the first true result is
encountered. All dependent rules are triggered regardless of the results.
When triggering a dependent rule, if more than one rule is found with the same name,
then all rules with that name will be triggered and their results will be ored together.
- Specified by:
fire
in interface RuleImplementor
- Following copied from interface:
com.ibm.websphere.brb.RuleImplementor
- Parameters:
tp
- the trigger point which is firing this rule implementor.target
- the target object of the trigger pointrule
- the rule that the implementor is running on behalf offiringParams
- the firing parameters, i.e. those parameters that are passed
to the BRBeans framework at the trigger point- Returns:
- The result of firing the rule implementor. Implementors that carry out
classifications must return a single String. Implementors which check
constraints should generally return a ConstraintReturn, especially if
the results are to be combined and returned by the BRBeans framework.
- Throws:
com.ibm.brb.BusinessRuleBeansException
- Thrown when an error condition is associated
with the fired Rule implementation.
getDescription
public java.lang.String getDescription()
- The programmer's description of what the algorithm does.
- Specified by:
getDescription
in interface RuleImplementor
- Following copied from interface:
com.ibm.websphere.brb.RuleImplementor
- Returns:
- A description of this rule implementor.
init
public void init(java.lang.Object[] parms,
java.lang.String[] dependentRules,
java.lang.String userDefinedData,
IRuleCopy rule)
throws BusinessRuleBeansException
- Initializes with persistent parameters used by this rule. This rule has
two or more dependent rules whose IDs are provided and retained.
- Specified by:
init
in interface RuleImplementor
- Following copied from interface:
com.ibm.websphere.brb.RuleImplementor
- Parameters:
initParams
- the parameters needed to initialize this RuleImplementordependentRules
- the names of the dependent rules to this rule; if there are none,
null is passeduserDefinedData
- userDefinedData property from the Rulerule
- the Rule on whose behalf the rule implementor is running