Overview | Package | Class | Use | Tree | Serialized | Deprecated | Index | Help
| ABLE 2.3.0 07/13/2005 14:21:00
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.ibm.able.rules
Class AbleIfThenElseRule

    java.lang.Object
      com.ibm.able.rules.AbleRule
          com.ibm.able.rules.AbleIfThenElseRule

All Implemented Interfaces:
  java.io.Serializable

public class AbleIfThenElseRule
extends AbleRule
implements java.io.Serializable

This class holds the expressions and actions used in an if-then-else scripting rule. The antecedent expression can be an arbitrarily complex boolean expression and the then{} and else{} sections can contain one or more consequent (action) clauses.

See Also:
  Serialized Form

Field Summary
`protected AbleExpression` | `myAntecedent` myAntecedent is an AbleExpression that evaluates to a boolean value.
`protected java.util.Vector` | `myElseList` myElseList is a list of AbleConsequentClause objects.
`protected java.util.Vector` | `myThenList` myThenList is a list of AbleConsequentClause objects.

Fields inherited from class com.ibm.able.rules.AbleRule
`myBooleanTruth, myBreakpoint, myComment, myEnabled, myFinalFlag, myFiredCount, myFiredFlag, myId, myLabel, myLocation, myPreConditions, myPriority, myPrompt, myProperties, myRdRefs, myRuleBlock, myRuleSet, myTemplateFlag, myTemplateName, myTemplateValues, myWrRefs, PriorityDefault, RuleIdInitial`

Constructor Summary
`AbleIfThenElseRule(java.lang.String theLabel, AbleRd thePriority, AbleExpression theAntecedent, java.util.Vector theThenList, java.util.Vector theElseList)` Create a new conditional rule with the specified priority, antecedent clauses, and consequent clause.

Method Summary
`void` | `addElseAction(AbleConsequentClause theAction)`
`void` | `addThenAction(AbleConsequentClause theAction)`
`java.lang.String` | `arlString()` Return a formal Able Rule Language (ARL) String.
`java.lang.String` | `armlString()` Return a formal XML string.
`AbleExpression` | `getAntecedent()` Retrieve the rule's list of antecedent clauses.
`java.util.Vector` | `getElseClauses()` Retrieve the rule's list of else clauses.
`java.lang.String` | `getTemplateString(java.util.Vector theTemplateVars)` Retrieve a text format string for use by rule templates.
`java.util.Vector` | `getThenClauses()` Retrieve the rule's list of consequent clauses.
`long` | `numberOfAntecedents()` Retrieve the number of antecedent clauses in this rule.
`long` | `numberOfElseClauses()` Retrieve the number of else clauses in this rule.
`long` | `numberOfThenClauses()` Retrieve the number of consequent clauses in this rule.
`void` | `reset()` Reset the rule to its unfired state.
`void` | `setThenActions(java.util.Vector theThenActions)`
`java.lang.String` | `toString()` Retrieve a string describing (the contents of) the object.
`java.lang.String` | `traceString(int theTraceStringFlavor)` Retrieve a string describing (the contents of) the object.
`java.lang.String` | `xmlString()` Return a formal XML string.

Methods inherited from class com.ibm.able.rules.AbleRule
`addHeaderRdReferences, addRdReference, addRdReferences, addWrReference, addWrReferences, arlActionBlockString, arlPreConditionsString, armlPreConditionsString, armlPriorityString, armlPropertiesString, checkTimePeriodPreConditions, clearBreakpoint, getArlComment, getBooleanTruth, getBreakpoint, getComment, getId, getIdLabelString, getLabel, getLocation, getMetaData, getPreConditions, getPriority, getPrompt, getPromptString, getProperties, getProperty, getRdReferences, getTemplateActionBlockString, getTemplateHeaderString, getTemplateName, getTemplateValues, getTemplateVars, getWrReferences, isDefaultPriority, isEnabled, isFinal, isFired, isGeneratedFromTemplate, isTemplate, logTrace, removeProperty, setBooleanTruth, setBreakpoint, setComment, setEnabled, setFinal, setFired, setId, setLocation, setMetaData, setPreConditions, setPriority, setPrompt, setProperties, setProperty, setTemplate, setTemplateName, setTemplateValues, xmlPreConditionsString, xmlPriorityString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### myAntecedent

    protected AbleExpression myAntecedent

  myAntecedent is an AbleExpression that evaluates to a boolean value.

### myThenList

    protected java.util.Vector myThenList

  myThenList is a list of AbleConsequentClause objects. At least one must be present.

### myElseList

    protected java.util.Vector myElseList

  myElseList is a list of AbleConsequentClause objects. The list may by empty, but it is never null.

Constructor Detail

### AbleIfThenElseRule

    public AbleIfThenElseRule(java.lang.String theLabel,
                              AbleRd thePriority,
                              AbleExpression theAntecedent,
                              java.util.Vector theThenList,
                              java.util.Vector theElseList)

  Create a new conditional rule with the specified priority, antecedent clauses, and consequent clause.

Parameters:
  `theLabel` - The unique label, or name, of this rule.

  `thePriority` - The priority of this rule.

  `theAntecedent` - An AbleExpression that defines the antecedent for this rule.

  `theThenList` - A list of assignment statements that define the consequents of this rule. The list must contain at least one AbleConsequentClause. The list is cloned.

  `theElseList` - A list of assignment statements that define the actions to perform when the antecedents fail. The list may be empty, but it must not be null. The list is cloned.

Method Detail

### addThenAction

    public void addThenAction(AbleConsequentClause theAction)

### setThenActions

    public void setThenActions(java.util.Vector theThenActions)

### addElseAction

    public void addElseAction(AbleConsequentClause theAction)

### getAntecedent

    public final AbleExpression getAntecedent()

  Retrieve the rule's list of antecedent clauses.

  Returns:
    A reference to the actual list of antecedent clauses. This list may be empty (and will be empty if the rule is an assertion rather than a conditional rule), but the list is never null.

### numberOfAntecedents

    public long numberOfAntecedents()

  Retrieve the number of antecedent clauses in this rule.

  Returns:
    The number of clauses.

### getThenClauses

    public final java.util.Vector getThenClauses()

  Retrieve the rule's list of consequent clauses.

  Returns:
    The consequent clauses of the rule.

### numberOfThenClauses

    public long numberOfThenClauses()

  Retrieve the number of consequent clauses in this rule.

  Returns:
    The number of clauses.

### getElseClauses

    public final java.util.Vector getElseClauses()

  Retrieve the rule's list of else clauses.

  Returns:
    The else clauses of the rule.

### numberOfElseClauses

    public long numberOfElseClauses()

  Retrieve the number of else clauses in this rule.

  Returns:
    The number of clauses.

### reset

    public void reset()

  Reset the rule to its unfired state. Clear all antecedent clause truthValues.

  Overrides:
    `reset` in class `AbleRule`

### arlString

    public java.lang.String arlString()

  Return a formal Able Rule Language (ARL) String.

  Specified by:
    `arlString` in class `AbleRule`
  Returns:
    A String describing the object in Able rule language.

### xmlString

    public java.lang.String xmlString()

  Return a formal XML string.

  Specified by:
    `xmlString` in class `AbleRule`
  Returns:
    A String describing the object in XML.

### armlString

    public java.lang.String armlString()

  Return a formal XML string.

  Specified by:
    `armlString` in class `AbleRule`
  Returns:
    A String describing the object in XML.

### getTemplateString

    public java.lang.String getTemplateString(java.util.Vector theTemplateVars)
                                       throws AbleDataException

  Retrieve a text format string for use by rule templates. The string contains "{n}" strings, where the index 'n' corresponds to the template variables defined in the rule template. This string is based on the standard arlString() representation of the rule. After replacement of the template variable values, the resulting string must be a valid ARL format string that can be parsed.

  Specified by:
    `getTemplateString` in class `AbleRule`
  Parameters:
    `theTemplateVars` - An ordered list of template variables referenced by this rule.
  Returns:
    A Text format string used to create a new rule instance.
  Throws:
    `AbleDataException`
  See Also:
    `AbleRuleTemplate`

### toString

    public java.lang.String toString()

  Retrieve a string describing (the contents of) the object.

  Overrides:
    `toString` in class `AbleRule`
  Returns:
    A String containing the current contents of the object.

### traceString

    public java.lang.String traceString(int theTraceStringFlavor)

  Retrieve a string describing (the contents of) the object.

  Specified by:
    `traceString` in class `AbleRule`
  Parameters:
    `theTraceStringFlavor` - An Able.TraceStringFlavor value.

  Returns:
    A String containing the current contents of the object.

Overview | Package | Class | Use | Tree | Serialized | Deprecated | Index | Help
| ABLE 2.3.0 07/13/2005 14:21:00
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

(C) Copyright IBM Corporation 1999, 2005