View Javadoc

1   package org.kuali.rice.kew.api.rule;
2   
3   import org.joda.time.DateTime;
4   
5   import java.util.List;
6   import java.util.Map;
7   
8   public interface RuleContract {
9       /**
10       * Unique Id for Template of Rule.
11       *
12       * <p>
13       * This is the unique Id of the rule template of the rule
14       * </p>
15       *
16       * @return ruleTemplateId
17       */
18      String getRuleTemplateId();
19  
20      /**
21       * The active indicator for the rule.
22       *
23       * @return true if active false if not.
24       */
25      boolean isActive();
26  
27      /**
28       * The description of the rule.
29       *
30       * @return description
31       */
32      String getDescription();
33  
34      /**
35       * The documentTypeName of the rule.
36       *
37       * @return documentTypeName
38       */
39      String getDocTypeName();
40  
41      /**
42       * The ending date of the rule.
43       *
44       * <p>This is the date from which the rule stops being be used</p>
45       *
46       * @return fromDate
47       */
48      DateTime getFromDate();
49  
50      /**
51       * The ending date of the rule.
52       *
53       * <p>This is the date from which the rule starts to be used</p>
54       *
55       * @return toDate
56       */
57      DateTime getToDate();
58  
59      /**
60       * Shows if rule will force its action.
61       *
62       * @return boolean value representing if action is forced
63       */
64      boolean isForceAction();
65  
66      /**
67       * List of rule responsibilities associated with the Rule
68       *
69       * @return ruleResponsibilities
70       */
71      List<? extends RuleResponsibilityContract> getRuleResponsibilities();
72  
73      /**
74       * rule Extensions are a key, value representation provided in a Map that extend a normal Rule
75       *
76       * @return ruleExtensions
77       */
78      Map<String, String> getRuleExtensions();
79  
80      /**
81       * Template Name of the Rule.
82       *
83       * <p>
84       * This is the name of the rule template for the rule
85       * </p>
86       *
87       * @return ruleTemplateName
88       */
89      String getRuleTemplateName();
90  }