org.jbpm.workflow.instance.impl
Class WorkflowProcessInstanceImpl

java.lang.Object
  extended by org.jbpm.process.instance.impl.ProcessInstanceImpl
      extended by org.jbpm.workflow.instance.impl.WorkflowProcessInstanceImpl
All Implemented Interfaces:
Serializable, EventListener, NodeInstanceContainer, ProcessInstance, WorkflowProcessInstance, ContextableInstance, ContextInstanceContainer
Direct Known Subclasses:
RuleFlowProcessInstance

public abstract class WorkflowProcessInstanceImpl
extends ProcessInstanceImpl
implements WorkflowProcessInstance, NodeInstanceContainer

Default implementation of a RuleFlow process instance.

See Also:
Serialized Form

Field Summary
 
Fields inherited from interface org.drools.runtime.process.ProcessInstance
STATE_ABORTED, STATE_ACTIVE, STATE_COMPLETED, STATE_PENDING, STATE_SUSPENDED
 
Constructor Summary
WorkflowProcessInstanceImpl()
           
 
Method Summary
 void addEventListener(String type, EventListener listener, boolean external)
           
 void addNodeInstance(NodeInstance nodeInstance)
           
 void disconnect()
           
 List<String> getActiveNodeIds()
           
 String[] getEventTypes()
          Returns the event types this event listener is interested in.
 NodeInstance getFirstNodeInstance(long nodeId)
           
 NodeContainer getNodeContainer()
           
 NodeInstance getNodeInstance(long nodeInstanceId)
          Returns the node instance with the given id, or null if the node instance cannot be found.
 NodeInstance getNodeInstance(Node node)
           
 long getNodeInstanceCounter()
           
 Collection<NodeInstance> getNodeInstances()
          Returns all node instances that are currently active within this container.
 Collection<NodeInstance> getNodeInstances(boolean recursive)
           
 List<NodeInstance> getNodeInstances(long nodeId)
           
 Object getVariable(String name)
          Returns the value of the variable with the given name.
 Map<String,Object> getVariables()
           
 WorkflowProcess getWorkflowProcess()
           
 void internalSetNodeInstanceCounter(long nodeInstanceCounter)
           
 void nodeInstanceCompleted(NodeInstance nodeInstance, String outType)
           
 void reconnect()
           
 void removeEventListener(String type, EventListener listener, boolean external)
           
 void removeNodeInstance(NodeInstance nodeInstance)
           
 void setState(int state)
           
 void setState(int state, String outcome)
           
 void setVariable(String name, Object value)
           
 void signalEvent(String type, Object event)
          Signals that an event has occurred.
 void start()
           
 String toString()
           
 
Methods inherited from class org.jbpm.process.instance.impl.ProcessInstanceImpl
addContextInstance, getAgenda, getContextContainer, getContextInstance, getContextInstance, getContextInstance, getContextInstances, getId, getKnowledgeRuntime, getMetaData, getOutcome, getProcess, getProcessId, getProcessName, getState, internalSetState, internalStart, removeContextInstance, setContextInstance, setId, setKnowledgeRuntime, setMetaData, setOutcome, setProcess, setProcessId
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.jbpm.process.instance.ProcessInstance
getKnowledgeRuntime, getOutcome, getProcess, setId, setKnowledgeRuntime, setProcess
 
Methods inherited from interface org.jbpm.process.instance.ContextInstanceContainer
addContextInstance, getContextContainer, getContextInstance, getContextInstance, getContextInstances, removeContextInstance
 
Methods inherited from interface org.jbpm.process.instance.ContextableInstance
getContextInstance
 
Methods inherited from interface org.drools.runtime.process.ProcessInstance
getId, getProcessId, getProcessName, getState
 
Methods inherited from interface org.jbpm.workflow.instance.NodeInstanceContainer
getState
 

Constructor Detail

WorkflowProcessInstanceImpl

public WorkflowProcessInstanceImpl()
Method Detail

getNodeContainer

public NodeContainer getNodeContainer()

addNodeInstance

public void addNodeInstance(NodeInstance nodeInstance)

removeNodeInstance

public void removeNodeInstance(NodeInstance nodeInstance)

getNodeInstances

public Collection<NodeInstance> getNodeInstances()
Description copied from interface: NodeInstanceContainer
Returns all node instances that are currently active within this container.

Specified by:
getNodeInstances in interface NodeInstanceContainer
Returns:
the list of node instances currently active

getNodeInstances

public Collection<NodeInstance> getNodeInstances(boolean recursive)

getNodeInstance

public NodeInstance getNodeInstance(long nodeInstanceId)
Description copied from interface: NodeInstanceContainer
Returns the node instance with the given id, or null if the node instance cannot be found.

Specified by:
getNodeInstance in interface NodeInstanceContainer
Returns:
the node instance with the given id

getActiveNodeIds

public List<String> getActiveNodeIds()

getFirstNodeInstance

public NodeInstance getFirstNodeInstance(long nodeId)

getNodeInstances

public List<NodeInstance> getNodeInstances(long nodeId)

getNodeInstance

public NodeInstance getNodeInstance(Node node)

getNodeInstanceCounter

public long getNodeInstanceCounter()

internalSetNodeInstanceCounter

public void internalSetNodeInstanceCounter(long nodeInstanceCounter)

getWorkflowProcess

public WorkflowProcess getWorkflowProcess()

getVariable

public Object getVariable(String name)
Description copied from interface: WorkflowProcessInstance
Returns the value of the variable with the given name. Note that only variables in the process-level scope will be searched. Returns null if the value of the variable is null or if the variable cannot be found.

Specified by:
getVariable in interface WorkflowProcessInstance
Parameters:
name - the name of the variable
Returns:
the value of the variable, or null if it cannot be found

getVariables

public Map<String,Object> getVariables()

setVariable

public void setVariable(String name,
                        Object value)
Specified by:
setVariable in interface WorkflowProcessInstance

setState

public void setState(int state,
                     String outcome)
Overrides:
setState in class ProcessInstanceImpl

setState

public void setState(int state)
Overrides:
setState in class ProcessInstanceImpl

disconnect

public void disconnect()
Overrides:
disconnect in class ProcessInstanceImpl

reconnect

public void reconnect()
Overrides:
reconnect in class ProcessInstanceImpl

toString

public String toString()
Overrides:
toString in class ProcessInstanceImpl

start

public void start()
Overrides:
start in class ProcessInstanceImpl

signalEvent

public void signalEvent(String type,
                        Object event)
Description copied from interface: EventListener
Signals that an event has occurred. The type parameter defines which type of event and the event parameter can contain additional information related to the event.

Specified by:
signalEvent in interface EventListener
Overrides:
signalEvent in class ProcessInstanceImpl
Parameters:
type - the type of event
event - the data associated with this event

addEventListener

public void addEventListener(String type,
                             EventListener listener,
                             boolean external)

removeEventListener

public void removeEventListener(String type,
                                EventListener listener,
                                boolean external)

getEventTypes

public String[] getEventTypes()
Description copied from interface: EventListener
Returns the event types this event listener is interested in. May return null if the event types are unknown.

Specified by:
getEventTypes in interface EventListener
Overrides:
getEventTypes in class ProcessInstanceImpl

nodeInstanceCompleted

public void nodeInstanceCompleted(NodeInstance nodeInstance,
                                  String outType)


Copyright © 2001-2012 JBoss by Red Hat. All Rights Reserved.