|
Oracle Fusion Middleware Java API Reference for Oracle Business Rules 11g Release 1 (11.1.1) E10663-02 |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object
oracle.rules.sdk2.dictionary.DictionaryObject
oracle.rules.sdk2.dictionary.DictionaryComponent
oracle.rules.sdk2.ruleset.RuleComponent
oracle.rules.sdk2.ruleset.UnnamedRuleComponent
oracle.rules.sdk2.decisiontable.DTRule
public class DTRule
A DTRule contains conflict resolution information and provides methods for accessing the DimensionNodes and DTActionNodes for the rule.
Rules are ordered by their position in the RuleSheet's DTRuleTable. DTRule does not contain references to DimensionNodes and DTActionNodes because the DTActionNodes for the ith rule in the sheet are in the ith position of the DTActionNodeTables, and the DimensionNode for the last Dimension is in the ith position of the DimensionNodeTable. Remaining DimensionNodes can be obtained by following the parent link in the dimension tree.
Rules whose dimension values overlap this rule and contain non-identical actions should appear on one of the conflict resolution lists (override, runBefore, noConflict) or they will be reported when the sheet is checked for conflicts.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class oracle.rules.sdk2.dictionary.DictionaryComponent |
---|
DictionaryComponent.Diff, DictionaryComponent.DiffType |
Nested classes/interfaces inherited from interface java.util.Map |
---|
java.util.Map.Entry<K,V> |
Field Summary |
---|
Method Summary | |
---|---|
boolean |
conflict(DTRule conflict) Move the conflicting rule to the Conflict list. |
IDTable<DTRule> |
getConflict() Get Conflict. |
IDTableProperty<DTRule> |
getConflictProperty() Get Conflict Property (list of rules that this rule conflicts with) |
DimensionNode |
getDimensionNode(int index) Get DimensionNode from rule. |
DimensionNode |
getDimensionNode(int index, boolean diff) Get DimensionNode from rule. |
DTActionNode |
getDTActionNode(int index) Get DTActionNode from rule. |
DTActionNode |
getDTActionNode(int index, boolean diff) Get DTActionNode from rule. |
int |
getIndex() Get index of the DTRule in its parent table. |
int |
getIndex(boolean diff) Get index of the DTRule in its containing diff list, which may be a superlist of the parent component table. |
DimensionNode |
getLastDimensionNode() Get last DimensionNode from rule. |
DimensionNode |
getLastDimensionNode(boolean diff) Get last DimensionNode from rule. |
IDTable<DTRule> |
getNoConflict() Get NoConflict. |
IDTableProperty<DTRule> |
getNoConflictProperty() Get NoConflict Property (list of rules that this rule doesn't logically conflict with) |
IDTable<DTRule> |
getOverriddenBy() Get OverriddenBy. |
IDTableProperty<DTRule> |
getOverriddenByProperty() Get OverriddenBy Property |
IDTable<DTRule> |
getOverride() Get Override. |
IDTableProperty<DTRule> |
getOverrideProperty() Get Override Property (list of rules that this rule overrides) |
IDTable<DTRule> |
getRunAfter() Get RunAfter. |
IDTableProperty<DTRule> |
getRunAfterProperty() Get RunAfter Property (list of rules that this rule runs after) |
IDTable<DTRule> |
getRunBefore() Get RunBefore. |
IDTableProperty<DTRule> |
getRunBeforeProperty() Get RunBefore Property (list of rules that this rule runs before) |
boolean |
isLatest() Is this rule the latest (last one added to the decision table)? |
boolean |
noConflict(DTRule conflict) Move the conflicting rule to the noConflicts list. |
boolean |
overriddenBy(DTRule conflict) Move the conflicting rule to the OverriddenBy list. |
boolean |
override(DTRule conflict) Move the conflicting rule to the Override list. |
boolean |
runAfter(DTRule conflict) Move the conflicting rule to the RunAfter list. |
boolean |
runBefore(DTRule conflict) Move the conflicting rule to the RunBefore list. |
Methods inherited from class oracle.rules.sdk2.ruleset.UnnamedRuleComponent |
---|
init, isAliasDistinct, isNameDistinct |
Methods inherited from class oracle.rules.sdk2.ruleset.RuleComponent |
---|
get, getParent, getParentTable, parentAction, parentComponent, parentFunction, parentPattern, parentRule, parentRuleCommon, parentRuleSheet, parentVariable, RHSRuleVariables |
Methods inherited from class oracle.rules.sdk2.dictionary.DictionaryComponent |
---|
clear, containsKey, containsValue, entrySet, get, getAlias, getAlias, getAliasProperty, getAllReferences, getCustom, getDependents, getDescription, getDescriptionProperty, getDiff, getDiffProperties, getDiffs, getFullyQualifiedAlias, getFullyQualifiedName, getName, getNameProperty, getNext, getObjectPath, getOptions, getPrevious, getProperties, getProperty, getSelected, hasDiff, isEmpty, isFullyQualifiedName, keySet, put, putAll, remove, setAlias, setCustom, setDescription, setName, size, validate, validate, values |
Methods inherited from class oracle.rules.sdk2.dictionary.DictionaryObject |
---|
equals, exists, getAEReferences, getCombinedDataModel, getContainedIDs, getContainedIDs, getDataModel, getDictionary, getID, getIndent, getLevel, getObjectType, getParentByClass, getParentComponent, getParentComponentTable, getParentObject, getReferences, getRuleSet, getState, getWarnings, hashCode, isModified, validate |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface oracle.rules.sdk2.dictionary.UnnamedComponent |
---|
getAlias, getName, getPropertyNames, setAlias, setName |
Methods inherited from interface java.util.Map |
---|
equals, hashCode |
Method Detail |
---|
public boolean isLatest()
public DimensionNode getDimensionNode(int index)
index
- index of the Dimensionpublic DimensionNode getDimensionNode(int index, boolean diff)
index
- index of the Dimensiondiff
- whether to consider nodes added by RuleDictionary.diff(oracle.rules.sdk2.dictionary.RuleDictionary, java.lang.Object)
public DimensionNode getLastDimensionNode()
Note that it is more efficient to read all the dimension nodes of a rule by first reading the last dimension and then using DimensionNode.getParentDimensionNode()
to read other nodes than to use DTRule.getDimensionNode(int)
for each dimension.
public DimensionNode getLastDimensionNode(boolean diff)
diff
- whether to consider nodes added by RuleDictionary.diff(oracle.rules.sdk2.dictionary.RuleDictionary, java.lang.Object)
Note that it is more efficient to read all the dimension nodes of a rule by first reading the last dimension and then using DimensionNode.getParentDimensionNode()
to read other nodes than to use DTRule.getDimensionNode(int)
for each dimension.
public DTActionNode getDTActionNode(int index)
index
- index of the DTAction. 0 is first action in rule.java.lang.UnsupportedOperationException
- if an attempt is made to modify the listpublic DTActionNode getDTActionNode(int index, boolean diff)
index
- index of the DTAction. 0 is first action in rule.diff
- whether to consider nodes added by RuleDictionary.diff(oracle.rules.sdk2.dictionary.RuleDictionary, java.lang.Object)
java.lang.UnsupportedOperationException
- if an attempt is made to modify the listpublic IDTableProperty<DTRule> getOverrideProperty()
public IDTable<DTRule> getOverride()
DTRule.conflict(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.noConflict(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.runBefore(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.runAfter(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.override(oracle.rules.sdk2.decisiontable.DTRule)
, or DTRule.overriddenBy(oracle.rules.sdk2.decisiontable.DTRule)
to move a given DTRule to the correct IDTable.public boolean override(DTRule conflict)
conflict
- conflicting ruleDTRule.getOverride()
public IDTableProperty<DTRule> getRunBeforeProperty()
public IDTable<DTRule> getRunBefore()
DTRule.conflict(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.noConflict(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.runBefore(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.runAfter(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.override(oracle.rules.sdk2.decisiontable.DTRule)
, or DTRule.overriddenBy(oracle.rules.sdk2.decisiontable.DTRule)
to move a given DTRule to the correct IDTable.public boolean runBefore(DTRule conflict)
conflict
- conflicting ruleDTRule.getRunBefore()
public IDTableProperty<DTRule> getNoConflictProperty()
public IDTable<DTRule> getNoConflict()
DTRule.conflict(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.noConflict(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.runBefore(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.runAfter(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.override(oracle.rules.sdk2.decisiontable.DTRule)
, or DTRule.overriddenBy(oracle.rules.sdk2.decisiontable.DTRule)
to move a given DTRule to the correct IDTable.public boolean noConflict(DTRule conflict)
conflict
- conflicting ruleDTRule.getNoConflict()
public IDTableProperty<DTRule> getOverriddenByProperty()
public IDTable<DTRule> getOverriddenBy()
DTRule.conflict(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.noConflict(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.runBefore(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.runAfter(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.override(oracle.rules.sdk2.decisiontable.DTRule)
, or DTRule.overriddenBy(oracle.rules.sdk2.decisiontable.DTRule)
to move a given DTRule to the correct IDTable.public boolean overriddenBy(DTRule conflict)
conflict
- conflicting ruleDTRule.getOverriddenBy()
public IDTableProperty<DTRule> getRunAfterProperty()
public IDTable<DTRule> getRunAfter()
DTRule.conflict(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.noConflict(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.runBefore(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.runAfter(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.override(oracle.rules.sdk2.decisiontable.DTRule)
, or DTRule.overriddenBy(oracle.rules.sdk2.decisiontable.DTRule)
to move a given DTRule to the correct IDTable.public boolean runAfter(DTRule conflict)
conflict
- conflicting ruleDTRule.getRunAfter()
public IDTableProperty<DTRule> getConflictProperty()
public IDTable<DTRule> getConflict()
DTRule.conflict(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.noConflict(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.runBefore(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.runAfter(oracle.rules.sdk2.decisiontable.DTRule)
, DTRule.override(oracle.rules.sdk2.decisiontable.DTRule)
, or DTRule.overriddenBy(oracle.rules.sdk2.decisiontable.DTRule)
to move a given DTRule to the correct IDTable.public boolean conflict(DTRule conflict)
conflict
- conflicting ruleDTRule.getConflict()
public int getIndex()
public int getIndex(boolean diff)
diff
- getIndex(false)==getIndex()
|
Oracle Fusion Middleware Java API Reference for Oracle Business Rules 11g Release 1 (11.1.1) E10663-02 |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |