com.irs.jam
Class Plan

java.lang.Object
  |
  +--com.irs.jam.TableObject
        |
        +--com.irs.jam.Plan
All Implemented Interfaces:
java.io.Serializable

public class Plan
extends TableObject
implements java.io.Serializable

Represents the basic plan within JAM

See Also:
Serialized Form

Field Summary
protected  java.lang.String _attributes
           
protected  PlanSequenceConstruct _body
           
protected  Relation _concludeSpecification
           
protected  PlanContext _context
           
protected  java.lang.String _documentation
           
protected  PlanAtomicConstruct _effects
           
protected  PlanAtomicConstruct _failure
           
protected  Action _goalSpecification
           
protected  PlanContext _precondition
           
protected  SymbolTable _symbolTable
           
protected  Expression _utility
           
protected  boolean _valid
           
 
Fields inherited from class com.irs.jam.TableObject
_id, _name
 
Constructor Summary
Plan()
           
 
Method Summary
 PlanContext addContext(ConditionList cl)
           
 PlanContext addPrecondition(ConditionList cl)
           
 boolean checkContext(BindingList bindingList)
          Evaluate truth value of context expression
 boolean checkPrecondition(BindingList bindingList)
          Evaluate truth value of precondition expression
 boolean confirmContext(Binding b)
          Evaluate truth value of context expression
 void disable()
           
 double evalUtility(Binding binding)
          Calculate the utility value of the plan instance
 void format(java.io.PrintStream s)
          Print out so that it can be in-line with other output
 java.lang.String getAttributes()
           
 PlanSequenceConstruct getBody()
           
 Relation getConcludeSpecification()
           
 PlanContext getContext()
           
 java.lang.String getDocumentation()
           
 PlanAtomicConstruct getEffects()
           
 PlanAtomicConstruct getFailure()
           
 Action getGoalSpecification()
           
 java.lang.String getName()
           
 PlanContext getPrecondition()
           
 SymbolTable getSymbolTable()
           
 Expression getUtility()
           
 boolean isValid()
           
 void print(java.io.PrintStream s)
          Print out without worrying about being in-line with other output
 java.lang.String setAttributes(java.lang.String planAtt)
           
 PlanSequenceConstruct setBody(PlanSequenceConstruct c)
           
 Relation setConcludeSpecification(Relation r)
           
 PlanContext setContext(PlanContext c)
           
 java.lang.String setDocumentation(java.lang.String planDoc)
           
 PlanAtomicConstruct setEffects(PlanAtomicConstruct c)
           
 PlanAtomicConstruct setFailure(PlanAtomicConstruct f)
           
 Action setGoalSpecification(Action p)
           
 void setName(java.lang.String planName)
           
 PlanContext setPrecondition(PlanContext c)
           
 Expression setUtility(Expression p)
           
 
Methods inherited from class com.irs.jam.TableObject
getID, setID
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_goalSpecification

protected Action _goalSpecification

_concludeSpecification

protected Relation _concludeSpecification

_utility

protected Expression _utility

_body

protected PlanSequenceConstruct _body

_context

protected PlanContext _context

_precondition

protected PlanContext _precondition

_documentation

protected java.lang.String _documentation

_failure

protected PlanAtomicConstruct _failure

_effects

protected PlanAtomicConstruct _effects

_attributes

protected java.lang.String _attributes

_symbolTable

protected SymbolTable _symbolTable

_valid

protected boolean _valid
Constructor Detail

Plan

public Plan()
Method Detail

getName

public java.lang.String getName()
Overrides:
getName in class TableObject

setName

public void setName(java.lang.String planName)

getGoalSpecification

public Action getGoalSpecification()

setGoalSpecification

public Action setGoalSpecification(Action p)

getConcludeSpecification

public Relation getConcludeSpecification()

setConcludeSpecification

public Relation setConcludeSpecification(Relation r)

setUtility

public Expression setUtility(Expression p)

getUtility

public Expression getUtility()

getBody

public PlanSequenceConstruct getBody()

getContext

public PlanContext getContext()

setContext

public PlanContext setContext(PlanContext c)

getPrecondition

public PlanContext getPrecondition()

setPrecondition

public PlanContext setPrecondition(PlanContext c)

getEffects

public PlanAtomicConstruct getEffects()

setEffects

public PlanAtomicConstruct setEffects(PlanAtomicConstruct c)

getFailure

public PlanAtomicConstruct getFailure()

setFailure

public PlanAtomicConstruct setFailure(PlanAtomicConstruct f)

getDocumentation

public java.lang.String getDocumentation()

isValid

public boolean isValid()

disable

public void disable()

getSymbolTable

public SymbolTable getSymbolTable()

setDocumentation

public java.lang.String setDocumentation(java.lang.String planDoc)

getAttributes

public java.lang.String getAttributes()

setAttributes

public java.lang.String setAttributes(java.lang.String planAtt)

setBody

public PlanSequenceConstruct setBody(PlanSequenceConstruct c)

evalUtility

public double evalUtility(Binding binding)
Calculate the utility value of the plan instance

addContext

public PlanContext addContext(ConditionList cl)

addPrecondition

public PlanContext addPrecondition(ConditionList cl)

checkContext

public boolean checkContext(BindingList bindingList)
Evaluate truth value of context expression

confirmContext

public boolean confirmContext(Binding b)
Evaluate truth value of context expression

checkPrecondition

public boolean checkPrecondition(BindingList bindingList)
Evaluate truth value of precondition expression

print

public void print(java.io.PrintStream s)
Print out without worrying about being in-line with other output
Overrides:
print in class TableObject

format

public void format(java.io.PrintStream s)
Print out so that it can be in-line with other output