Write the Case rule class

Your rule class to identify and calculate key decision factors for a case must ultimately extend from the ProductKeyDataRuleSet.AbstractCase interface rule class. For ease of upgrades, it is recommended that your rule class extends the DefaultProductKeyDataRuleSet.DefaultCase rule class which provides default implementations.

Here is a description of the attributes inherited from AbstractCase:

Table 1. Rule attributes inherited from ProductKeyDataRuleSet.AbstractProduct
Rule Attribute name Data type Description
productDeliveryCase ProductDeliveryCase The controlling rule object which is responsible for splicing together the determination result from the contributions made by the product period. Passed in when the instance of AbstractCase is created.
keyDataTimelines List of AbstractKeyDataTimeline The list of key decision factors for the case.

Create a rule class which extends DefaultProductKeyDataRuleSet.DefaultCase. The rule class should be named in line with your product, e.g. ProductName KeyDecisionFactors (the Engine does not have any technical constraint on the rule class name - rather a good name for your rule class may make it easier to develop and maintain your rule sets).

The inherited implementation of keyDataTimelines returns an empty list; leave this implementation for now and you will return to it once you have created your key decision factor classes.