ix.icore.process
Class ProcessModelManager

java.lang.Object
  |
  +--ix.icore.process.ProcessModelManager
Direct Known Subclasses:
Ip2ModelManager

public abstract class ProcessModelManager
extends java.lang.Object


Inner Class Summary
(package private)  class ProcessModelManager.MakeVarIfUnbound
           
protected static interface ProcessModelManager.Sentinel
           
 
Field Summary
protected  java.util.List nodes
           
protected  java.util.List processStatusListeners
           
protected  java.util.List sentinels
           
protected  java.util.Map varEnv
           
 
Constructor Summary
ProcessModelManager()
           
 
Method Summary
abstract  void addConstraint(Constraint constraint)
           
protected abstract  void addConstraint(PNode node, Constraint c)
           
 void addConstraints(PNode node, java.util.List constraints)
           
 void addNode(PNode node)
           
 void addProcessStatusListener(ix.icore.process.event.ProcessStatusListener listener)
           
 void addSentinel(ProcessModelManager.Sentinel r)
           
abstract  MatchEnv evalFilters(java.util.List conds, MatchEnv env)
           
 void fireNewBindings(java.util.Map bindings)
           
 void fireStateChange(java.util.Map delta)
           
 void fireStatusUpdate()
           
abstract  void newBindings(java.util.Map bindings)
          Tells the model manager to bind the indicated variables.
 LList putVariablesInPattern(LList pattern)
          Returns a copy of the pattern in which ?-vars have been replaced by Variables.
 void removeSentinel(ProcessModelManager.Sentinel r)
           
 void reset()
           
 void runSentinels()
           
abstract  void statusChanged(PNode node)
          Called by a node when its status changes.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

nodes

protected java.util.List nodes

varEnv

protected java.util.Map varEnv

processStatusListeners

protected java.util.List processStatusListeners

sentinels

protected java.util.List sentinels
Constructor Detail

ProcessModelManager

public ProcessModelManager()
Method Detail

reset

public void reset()

addNode

public void addNode(PNode node)

addConstraints

public void addConstraints(PNode node,
                           java.util.List constraints)

addConstraint

protected abstract void addConstraint(PNode node,
                                      Constraint c)

addConstraint

public abstract void addConstraint(Constraint constraint)

evalFilters

public abstract MatchEnv evalFilters(java.util.List conds,
                                     MatchEnv env)

newBindings

public abstract void newBindings(java.util.Map bindings)
Tells the model manager to bind the indicated variables. This is the only way in which values should ever be assigned.
See Also:
Variable

statusChanged

public abstract void statusChanged(PNode node)
Called by a node when its status changes.

putVariablesInPattern

public LList putVariablesInPattern(LList pattern)
Returns a copy of the pattern in which ?-vars have been replaced by Variables.

addSentinel

public void addSentinel(ProcessModelManager.Sentinel r)

removeSentinel

public void removeSentinel(ProcessModelManager.Sentinel r)

runSentinels

public void runSentinels()

addProcessStatusListener

public void addProcessStatusListener(ix.icore.process.event.ProcessStatusListener listener)

fireStatusUpdate

public void fireStatusUpdate()

fireNewBindings

public void fireNewBindings(java.util.Map bindings)

fireStateChange

public void fireStateChange(java.util.Map delta)