|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.kuali.rice.krms.api.repository.proposition.PropositionDefinition
public final class PropositionDefinition
Concrete model object implementation of KRMS Proposition. Immutable. Instances of Proposition can be (un)marshalled to and from XML. There are three main types of Propositions: 1. Compound Propositions - a proposition consisting of other propositions and a boolean algebra operator (AND, OR) defining how to evaluate those propositions. 2. Parameterized Propositions - a proposition which is parameterized by some set of values, evaluation logic is implemented by hand and returns true or false 3. Simple Propositions - a proposition of the form lhs op rhs where lhs=left-hand side, rhs=right-hand side, and op=operator Propositions are reference by a rule or another proposition (in the case of compound propositions). Propositions are never re-used across multiple rules. Each proposition can have zero or more parameters. The proposition parameter is the primary data element used to define the proposition. (@see PropositionParameter)
PropositonContract
,
PropositionParameterContract
,
Serialized FormNested Class Summary | |
---|---|
static class |
PropositionDefinition.Builder
This builder is used to construct instances of KRMS Proposition. |
(package private) static class |
PropositionDefinition.Constants
Defines some internal constants used on this class. |
static class |
PropositionDefinition.Elements
A private class which exposes constants which define the XML element names to use when this object is marshalled to XML. |
Field Summary | |
---|---|
private Collection<Element> |
_futureElements
|
private List<PropositionDefinition> |
compoundComponents
|
private String |
compoundOpCode
|
private String |
description
|
private String |
id
|
private List<PropositionParameter> |
parameters
|
private String |
propositionTypeCode
|
private String |
ruleId
|
private static long |
serialVersionUID
|
private String |
typeId
|
private Long |
versionNumber
|
Constructor Summary | |
---|---|
private |
PropositionDefinition()
This constructor should never be called. |
private |
PropositionDefinition(PropositionDefinition.Builder builder)
Constructs a KRMS Proposition from the given builder. |
Method Summary | |
---|---|
boolean |
equals(Object obj)
All "Complete" model object's should adhere to the ModelObjectComplete.equals(Object) contract. |
List<PropositionDefinition> |
getCompoundComponents()
This method returns the propositions which are contained in a compound proposition. |
String |
getCompoundOpCode()
This method returns the op code to be used when evaluating compound propositions. |
String |
getDescription()
This is the description text for the KRMS proposition |
String |
getId()
The unique identifier for an object. |
List<PropositionParameter> |
getParameters()
This is the parameter list of the proposition. |
String |
getPropositionTypeCode()
There are three main types of Propositions: Compound Propositions - a proposition consisting of other propositions and a boolean algebra operator (AND, OR) defining how to evaluate those propositions. |
String |
getRuleId()
This returns the ID of the rule this proposition belongs to. |
String |
getTypeId()
This is the id of Proposition KrmsType of the proposition. |
Long |
getVersionNumber()
Returns the version number for this object. |
int |
hashCode()
All "Complete" model object's should adhere to the ModelObjectComplete.hashCode() contract. |
String |
toString()
This will return a proper string representation of the Model Object. |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private static final long serialVersionUID
private String id
private String description
private String typeId
private String ruleId
private String propositionTypeCode
private List<PropositionParameter> parameters
private String compoundOpCode
private List<PropositionDefinition> compoundComponents
private final Long versionNumber
private final Collection<Element> _futureElements
Constructor Detail |
---|
private PropositionDefinition()
private PropositionDefinition(PropositionDefinition.Builder builder)
builder
- the Builder from which to construct the KRMS PropositionMethod Detail |
---|
public String getId()
Identifiable
getId
in interface Identifiable
public String getDescription()
PropositionDefinitionContract
getDescription
in interface PropositionDefinitionContract
public String getRuleId()
PropositionDefinitionContract
getRuleId
in interface PropositionDefinitionContract
public String getTypeId()
PropositionDefinitionContract
getTypeId
in interface PropositionDefinitionContract
public String getPropositionTypeCode()
PropositionDefinitionContract
There are three main types of Propositions: Compound Propositions - a proposition consisting of other propositions and a boolean algebra operator (AND, OR) defining how to evaluate those propositions. Parameterized Propositions - a proposition which is parameterized by some set of values, evaluation logic is implemented by hand and returns true or false Simple Propositions - a proposition of the form lhs op rhs where lhs=left-hand side, rhs=right-hand side, and op=operator
getPropositionTypeCode
in interface PropositionDefinitionContract
Valid values are C = compound, P = parameterized, S = simple
public List<PropositionParameter> getParameters()
PropositionDefinitionContract
Compound Propositions will have an empty parameter list.
getParameters
in interface PropositionDefinitionContract
PropositionParameter
public String getCompoundOpCode()
PropositionDefinitionContract
getCompoundOpCode
in interface PropositionDefinitionContract
public List<PropositionDefinition> getCompoundComponents()
PropositionDefinitionContract
getCompoundComponents
in interface PropositionDefinitionContract
public Long getVersionNumber()
Versioned
getVersionNumber
in interface Versioned
public int hashCode()
ModelObjectComplete
ModelObjectComplete.hashCode()
contract.
hashCode
in interface ModelObjectComplete
hashCode
in class Object
public boolean equals(Object obj)
ModelObjectComplete
ModelObjectComplete.equals(Object)
contract.
equals
in interface ModelObjectComplete
equals
in class Object
obj
- to object to compare for equality
public String toString()
ModelObjectBasic
toString
in interface ModelObjectBasic
toString
in class Object
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |