Package wt.rule

Uses the RuleService (and server-side-only RuleServiceSvr to manage the definition and application of Rules.

See:
          Description

Interface Summary
Rule A Rule provides a holder for business logic that describes actions to be performed under certain conditions.
RuleApplier This interface specifies an applier of a rule.
RuleCache A cache for rules.
RuleMerger This interface defines a rule merger.
RuleSelector This interface defines a rule selector.
RuleService The rule service supports the following functions: Rule specification: specification of business logic that describes actions to be performed under certain conditions (see Rule).
RuleServiceSvr

Supported API: false

Extendable: false
RuleValidator This interface defines a rule validator.
 

Class Summary
AbstractRuleCache An abstract implementation of RuleCache that extends CacheManager and provides some default implementations for the RuleCache interface methods.
CompositeRule A rule that represents a composite of other rules.
InstanceBasedRule An implementation of the Rule interface that references a particular object instance.
PersistentRule A Rule provides a holder for business logic that describes actions to be performed under certain conditions.
RuleConstants

Supported API: false

Extendable: false
RuleHelper This class provides access to the current RuleService provider (see RuleHelper.service) and provides support methods for users of that service.
RuleServerHelper

Supported API: false

Extendable: false
RuleServiceFwd The rule service supports the following functions: Rule specification: specification of business logic that describes actions to be performed under certain conditions (see Rule).
RuleType

Supported API: true

Extendable: false
TypeBasedRule Use the newTypeBasedRule static factory method(s), not the TypeBasedRule constructor, to construct instances of this class.
 

Exception Summary
RuleException

Supported API: false

Extendable: false
 

Package wt.rule Description

Uses the RuleService (and server-side-only RuleServiceSvr to manage the definition and application of Rules.

The RuleService provides a way to specify information that the system can use in order to perform actions on an object in the system. These specifications are called Rules.

The rule service supports two basic APIs:

Rule selection involves finding a rule that is applicable to a particular object. Rule application involves performing the actions that are required by the rule's specification.

The specification of a rule consists of an XML document. This XML document is parsed and "executed" when a rule is applied.

A rule has a RuleType. This rule type specifies the type of specification that is provided by the rule. For example, INIT rules allow for the specification of default values that can be used by the system to initialize an object before it is persisted.

A rule can be enabled or disabled. In general, the rule selection process considers only enabled rules.

The rule service uses a delegation pattern in order to enable customizations that add new rule selection logic or new rule application logic to support new rule types.