org.jbpm.pvm
Interface Transition

All Superinterfaces:
ObservableElement, ProcessElement, java.io.Serializable
All Known Implementing Classes:
ProcessModificationsImpl.AddedTransition, TransitionImpl

public interface Transition
extends ObservableElement

a transition in a ProcessDefinition graph.

Guard conditions

TODO

Transitions as wait states

A wait condition indicates wether a transition is to be taken synchronously or wether the transition will behave as a wait state.

Transitions that are wait states can occur when an analyst has an actual state (e.g. 'making loss') and a desired state (e.g. 'making profit') and models a transition between those states. In that case the transition might take a long time and hence it results into a wait state for the system.

If the wait condition is null or if it returns false, then the transition will be taking synchronously. Otherwise the transition will behave as a wait state and wait for a signal on the execution.

Transitions as wait states has every thing to do with matching the process graph to transactions on the server. If the transition is taken in one (the current) transaction, then the async condition should be empty or evaluate to false. If the arrival of the execution in the destination node should occur in a separate execution

Author:
Tom Baeyens

Field Summary
static java.lang.String EVENT_TRANSITION_TAKE
           
 
Method Summary
 Node getDestination()
          the node in which this transition arrives.
 Event getEvent()
          the event that is fired when this transition is being taken.
 Condition getGuardCondition()
          the condition that indicates if this transition can be taken or not.
 Node getSource()
          the node from which this transition leaves.
 Condition getWaitCondition()
          the condition that is evaluated while the transition is taken and determines whether this transition should propagate to the destination node or behave as a wait state.
 
Methods inherited from interface org.jbpm.pvm.ObservableElement
getDescription, getEvent, getEvents, getName, getParent, hasEvent
 
Methods inherited from interface org.jbpm.pvm.ProcessElement
getDbid, getExceptionHandlers, getProcessDefinition, getProperty, getPropertyKeys
 

Field Detail

EVENT_TRANSITION_TAKE

static final java.lang.String EVENT_TRANSITION_TAKE
See Also:
Constant Field Values
Method Detail

getEvent

Event getEvent()
the event that is fired when this transition is being taken. This corresponds to the EVENT_TRANSITION_TAKE entry of the events in the process element event map.


getSource

Node getSource()
the node from which this transition leaves.


getDestination

Node getDestination()
the node in which this transition arrives.


getGuardCondition

Condition getGuardCondition()
the condition that indicates if this transition can be taken or not.


getWaitCondition

Condition getWaitCondition()
the condition that is evaluated while the transition is taken and determines whether this transition should propagate to the destination node or behave as a wait state. See Transitions as wait states.