|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.waveset.expression.ExState
com.waveset.workflow.ExpressionState
An expression state object that knows how to resolve external references to workflow case variables. It also provides an implemetation of the "getObject" external function that can be used to access configuration objects from expressions.
Nested Class Summary |
Nested classes inherited from class com.waveset.expression.ExState |
ExState.ExBreakpointContext |
Field Summary | |
static java.lang.String |
code_id
|
Constructor Summary | |
ExpressionState(WorkflowEngine engine)
Create an expression state object that knows how to resolve workflow case variables, and locate configuration objects. |
Method Summary | |
void |
breakpointEnd(VariableScope scope,
com.sun.idm.debugger.common.Locatable target,
java.lang.Object value)
|
void |
breakpointStart(VariableScope scope,
com.sun.idm.debugger.common.Locatable target)
Called by WorkflowEngine at it encounters interesting breakpoint targets for the monitor. |
protected ExState.ExBreakpointContext |
createBreakpointContext()
Override createBreakpointContext to create a WorkflowBreakpointContext instead. |
VariableScope |
getVariableScope()
|
void |
markBreakpointStack(VariableScope scope)
|
java.lang.Object |
resolveCall(java.lang.String name,
java.util.List arglist)
Resolve a call to an external function. |
java.lang.Object |
resolveObject(java.lang.String path)
Resolve a reference to an object with the |
java.lang.Object |
resolveReference(java.lang.String name)
Resolve a reference to an external variable. |
java.lang.Object |
resolveRule(java.lang.String name,
java.util.Map args)
Resolve a rule call. |
void |
setCache(ObjectCache cache)
Set the cache object. |
void |
setExternal(java.lang.String name,
java.lang.Object value)
Handle the assignment of an external variable. |
void |
setTrace(WorkflowTraceBuffer t)
Set the trace buffer. |
void |
setVariableScope(VariableScope s)
Set the object that is the bottom of a variable scope hierarcy. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final java.lang.String code_id
Constructor Detail |
public ExpressionState(WorkflowEngine engine)
Method Detail |
public void setCache(ObjectCache cache)
public void setVariableScope(VariableScope s)
public VariableScope getVariableScope()
public void setTrace(WorkflowTraceBuffer t)
public java.lang.Object resolveReference(java.lang.String name) throws WavesetException
Here we recognize case variables, and a few special builtins.
resolveReference
in class ExState
WavesetException
public void setExternal(java.lang.String name, java.lang.Object value) throws WavesetException
setExternal
in class ExState
WavesetException
public java.lang.Object resolveCall(java.lang.String name, java.util.List arglist) throws WavesetException
resolveCall
in class ExState
WavesetException
public java.lang.Object resolveRule(java.lang.String name, java.util.Map args) throws WavesetException
resolveRule
in class ExState
WavesetException
public java.lang.Object resolveObject(java.lang.String path) throws WavesetException
This was added after the object interrogation hack in resolveReference, should think about combining these.
We recognize object identifiers of this form:
Type:nameWhere "Type" is the name of one of our built-in types, and name is an object name or id.
Example:
User:fred
resolveObject
in class ExState
WavesetException
protected ExState.ExBreakpointContext createBreakpointContext()
createBreakpointContext
in class ExState
public void breakpointStart(VariableScope scope, com.sun.idm.debugger.common.Locatable target)
public void breakpointEnd(VariableScope scope, com.sun.idm.debugger.common.Locatable target, java.lang.Object value)
public void markBreakpointStack(VariableScope scope)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |