Overview | Package | Class | Tree | Deprecated | Index | Help
| Copyright © 2000, 2009, Oracle and/or its affiliates. All rights reserved.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.bea.p13n.controls.rules
Interface RulesExecutorControl

    @ControlInterface
    public interface RulesExecutorControl

Nested Class Summary
`static interface` | `RulesExecutorControl.RuleParams` Define the properties for this control.

Method Summary
`Iterator` | `evaluate(String rulesetUri, String ruleName, Object[] inputObjects)` Applies a named rule in the ruleset uri to the set of objects provided by the caller and returns an iterator over the resultant set of objects.
`Iterator` | `evaluateAll(String rulesetUri, Object[] inputObjects)` Applies all rules within the named rule set to the set of objects provided by the caller and returns an iterator over the resultant set of objects.
`Iterator` | `evaluateRule(Object[] inputObjects)` Applies a named rule to the set of objects provided by the caller and returns an iterator over the resultant set of objects.
`Iterator` | `evaluateRuleSet(Object[] inputObjects)` Applies all rules within the named rule set to the set of objects provided by the caller and returns an iterator over the resultant set of objects.
`void` | `setDoFilter(boolean doFilter)` Toggle the filtering option, overriding the control property setting.
`void` | `setFilterClass(String filterClass)` Set the Java Class on which the rules results will be filtered.
`void` | `setFilterClasses(String[] filterClasses)` Set the array of Java Class names on which the rules results will be filtered.
`void` | `setFilterRule(String ruleName)` Set the rule name for which the filter will be applied.

Method Detail

### evaluateRule

    Iterator evaluateRule(Object[] inputObjects)
                          throws IllegalArgumentException,
                                 ApplicationException,
                                 P13nControlException

  Applies a named rule to the set of objects provided by the caller and returns an iterator over the resultant set of objects. Both the ruleset URI and rule name must be specified on the control properties.

  Use this method for a single invocation of the control, where all properties have been configured on the control.

  Parameters
    `inputObjects` - The set of objects to which the rule is to be applied
  Returns
    The set of objects which resulted from the application of the rule and optionally filtered.
  Throws
    `IllegalArgumentException` - if `ruleSetUri` or `ruleName` are `null` or zero-length, or if `inputObjects` is `null`.
    `ApplicationException` - if the rule set execution subsystem is unable to execute the rule.
    `P13nControlException` - if remote exceptions are encountered.

### evaluateRuleSet

    Iterator evaluateRuleSet(Object[] inputObjects)
                             throws IllegalArgumentException,
                                    ApplicationException,
                                    P13nControlException

  Applies all rules within the named rule set to the set of objects provided by the caller and returns an iterator over the resultant set of objects. The ruleset URI must be specified on the control properties.

  Use this method for a single invocation of the control, where all properties have been configured on the control.

  Parameters
    `inputObjects` - The set of objects to which the rules are to be applied.
  Returns
    The set of objects which resulted from the application of the rules and optionally filtered
  Throws
    `IllegalArgumentException` - if `ruleSetUri` is `null` or zero-length, or if `inputObjects` is `null`.
    `ApplicationException` - if the rule set execution subsystem is unable to execute the rule set.
    `P13nControlException` - if remote errors are encountered.

### evaluate

    Iterator evaluate(String rulesetUri,
                      String ruleName,
                      Object[] inputObjects)
                      throws IllegalArgumentException,
                             ApplicationException,
                             P13nControlException

  Applies a named rule in the ruleset uri to the set of objects provided by the caller and returns an iterator over the resultant set of objects.

  Use this method for multiple invocations of the same control, where you'd like to execute different rulesets/rules each time.

  Parameters
    `rulesetUri` - Then URI of the ruleset containing the rule. This is relative to the application's META-INF/data directory and begins with '/'
    `ruleName` - The name of the rule within the ruleset to execute.
    `inputObjects` - The set of objects to which the rule is to be applied
  Returns
    The set of objects which resulted from the application of the rule and optionally filtered.
  Throws
    `IllegalArgumentException` - if `ruleSetUri` or `ruleName` are `null` or zero-length, or if `inputObjects` is `null`.
    `ApplicationException` - if the rule set execution subsystem is unable to execute the rule.
    `P13nControlException` - if remote exceptions are encountered.

### evaluateAll

    Iterator evaluateAll(String rulesetUri,
                         Object[] inputObjects)
                         throws IllegalArgumentException,
                                ApplicationException,
                                P13nControlException

  Applies all rules within the named rule set to the set of objects provided by the caller and returns an iterator over the resultant set of objects.

  Use this method for multiple invocations of the same control, where you'd like to execute different rulesets each time.

  Parameters
    `rulesetUri` - Then URI of the ruleset containing the rule. This is relative to the application's META-INF/data directory and begins with '/'
    `inputObjects` - The set of objects to which the rules are to be applied.
  Returns
    The set of objects which resulted from the application of the rules and optionally filtered
  Throws
    `IllegalArgumentException` - if `ruleSetUri` is `null` or zero-length, or if `inputObjects` is `null`.
    `ApplicationException` - if the rule set execution subsystem is unable to execute the rule set.
    `P13nControlException` - if remote errors are encountered.

### setFilterClass

    void setFilterClass(String filterClass)
                        throws ClassNotFoundException

  Set the Java Class on which the rules results will be filtered. Once the rules engine has finished executing, several objects will exist in working memory, including those that were originally input to the evaluate methods. Specifying the filter class allows you to view only those classes in the results you're interested in.

  This method overrides the 'filterClass' property of this control and allows multiple invocations of the same control using different filters. It automatically sets the 'filterResults' parameter to true.

  Specify either this or the filterClasses, but not both.

  Use this method for multiple invocations of the same control using different filter classes. Otherwise, this property may be set on the control and applied to all invocations of the control

  Parameters
    `filterClass` - The Java Class name on which the results will be filtered.
  Throws
    `ClassNotFoundException` - if the name class cannot be instantiated

### setFilterClasses

    void setFilterClasses(String[] filterClasses)
                          throws ClassNotFoundException

  Set the array of Java Class names on which the rules results will be filtered. Once the rules engine has finished executing, several objects will exist in working memory, including those that were originally input to the evaluate methods. Specifying the filter class names allows you to view only those classes in the results you're interested in.

  This method overrides the 'filterClasses' property of this control and allows multiple invocations of the same control using different filters. It automatically sets the 'filterResults' parameter to true.

  Specify either this or the filterClass, but not both.

  Use this method for multiple invocations of the same control using different filter classes. Otherwise, this property may be set on the control and applied to all invocations of the control.

  Parameters
    `filterClasses` - The array of Java Class names on which the results will be filtered.
  Throws
    `ClassNotFoundException` - if the name class cannot be instantiated

### setFilterRule

    void setFilterRule(String ruleName)

  Set the rule name for which the filter will be applied. Once the rules engine has finished executing, several objects will exist in working memory, including those that were originally input to the evaluate methods. You may be interested in the results of only one particular rule. If no rule name is specified, the filter is applied to the results of all rule executions.

  Use this method for multiple invocations of the same control using different filter rules. Otherwise, this property may be set on the control and applied to all invocations of the control

  This method overrides the 'filterRuleName' property of this control and allows multiple invocations of the same control using different filters. It automatically sets the 'filterResults' parameter to true.

  Parameters
    `ruleName` - The rule for which the filter will be applied.

### setDoFilter

    void setDoFilter(boolean doFilter)

  Toggle the filtering option, overriding the control property setting. When filtering, you must specify either the filterClass or the filterClasses. Specifying the filter rule name is optional (see javadocs above).

  When the rules engine has finished executing, its working memory will always include the input objects as well as any new objects created when the rule(s) fired. These new objects are of type 'com.bea.p13n.rules.Result' and you can use that API to get at the underlying object.

  Use this method for multiple invocations of the same control using different filter rules. Otherwise, this property may be set on the control and applied to all invocations of the control

  This method overrides the 'filterRuleName' property of this control and allows multiple invocations of the same control using different filters. It automatically sets the 'filterResults' parameter to true.

  Parameters
    `doFilter` - Whether or not to filter the rule results.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000, 2009, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
Other names may be trademarks of their respective owners.