Class ProcessDefinitionImpl
java.lang.Object
org.camunda.bpm.engine.impl.core.model.CoreModelElement
org.camunda.bpm.engine.impl.core.model.CoreActivity
org.camunda.bpm.engine.impl.pvm.process.ScopeImpl
org.camunda.bpm.engine.impl.pvm.process.ProcessDefinitionImpl
- All Implemented Interfaces:
Serializable,PvmProcessDefinition,PvmProcessElement,PvmScope,ReadOnlyProcessDefinition
- Direct Known Subclasses:
ProcessDefinitionEntity
- Author:
- Tom Baeyens, Daniel Meyer
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.camunda.bpm.engine.impl.pvm.process.ScopeImpl
ScopeImpl.BacklogErrorCallback -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Stringprotected ActivityImplprotected Map<ActivityImpl,List<ActivityImpl>> protected Stringprotected ParticipantProcessFields inherited from class org.camunda.bpm.engine.impl.pvm.process.ScopeImpl
BACKLOG, eventActivities, flowActivities, isSubProcessScope, namedFlowActivities, processDefinitionFields inherited from class org.camunda.bpm.engine.impl.core.model.CoreActivity
ioMappingFields inherited from class org.camunda.bpm.engine.impl.core.model.CoreModelElement
builtInListeners, builtInVariableListeners, id, listeners, properties, variableListeners -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddLaneSet(LaneSet newLaneSet) createProcessInstance(String businessKey) createProcessInstance(String businessKey, String caseInstanceId) createProcessInstance(String businessKey, String caseInstanceId, ActivityImpl initial) createProcessInstance(String businessKey, ActivityImpl initial) creates a process instance using the provided activity as initialprotected voidCoreActivityBehavior<? extends BaseDelegateExecution>The event scope for an activity is the scope in which the activity listens for events.The flow scope of the activity.getInitialActivityStack(ActivityImpl startActivity) getLaneForId(String id) The "level of subprocess scope" as defined in bpmn: this is the subprocess containing the activity.booleanisScope()Indicates whether this is a local scope for variables and events if true, there will _always_ be a scope execution created for it.booleanIndicates whether this scope is a sub process scope.protected PvmExecutionImplvoidsetInitial(ActivityImpl initial) voidsetParticipantProcess(ParticipantProcess participantProcess) toString()Methods inherited from class org.camunda.bpm.engine.impl.pvm.process.ScopeImpl
addExecutionListener, addExecutionListener, addToBacklog, contains, createActivity, findActivity, findActivityAtLevelOfSubprocess, findTransition, getActivities, getBacklogErrorCallbacks, getChildActivity, getEventActivities, getExecutionListeners, getExecutionListeners, getProcessDefinition, isAncestorFlowScopeOf, isBacklogEmpty, setSubProcessScopeMethods inherited from class org.camunda.bpm.engine.impl.core.model.CoreActivity
createActivity, getIoMapping, setIoMappingMethods inherited from class org.camunda.bpm.engine.impl.core.model.CoreModelElement
addBuiltInListener, addBuiltInListener, addBuiltInVariableListener, addBuiltInVariableListener, addListener, addListener, addListenerToMap, addVariableListener, addVariableListener, getBuiltInListeners, getBuiltInListeners, getBuiltInVariableListeners, getBuiltInVariableListenersLocal, getId, getListeners, getListeners, getName, getProperties, getProperty, getVariableListeners, getVariableListenersLocal, setId, setName, setProperties, setPropertyMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.camunda.bpm.engine.impl.pvm.PvmProcessElement
getId, getProcessDefinition, getProperties, getPropertyMethods inherited from interface org.camunda.bpm.engine.impl.pvm.PvmScope
findActivity, findActivityAtLevelOfSubprocess, findTransition, getActivitiesMethods inherited from interface org.camunda.bpm.engine.impl.pvm.ReadOnlyProcessDefinition
getName
-
Field Details
-
name
-
description
-
initial
-
initialActivityStacks
-
laneSets
-
participantProcess
-
-
Constructor Details
-
ProcessDefinitionImpl
-
-
Method Details
-
ensureDefaultInitialExists
protected void ensureDefaultInitialExists() -
createProcessInstance
- Specified by:
createProcessInstancein interfacePvmProcessDefinition
-
createProcessInstance
- Specified by:
createProcessInstancein interfacePvmProcessDefinition
-
createProcessInstance
- Specified by:
createProcessInstancein interfacePvmProcessDefinition
-
createProcessInstance
-
createProcessInstance
public PvmProcessInstance createProcessInstance(String businessKey, String caseInstanceId, ActivityImpl initial) -
createProcessInstanceForInitial
creates a process instance using the provided activity as initial -
newProcessInstance
-
getInitialActivityStack
-
getInitialActivityStack
-
getDiagramResourceName
- Specified by:
getDiagramResourceNamein interfaceReadOnlyProcessDefinition
-
getDeploymentId
- Specified by:
getDeploymentIdin interfacePvmProcessDefinition
-
addLaneSet
-
getLaneForId
-
getActivityBehavior
- Specified by:
getActivityBehaviorin classCoreActivity
-
getInitial
- Specified by:
getInitialin interfaceReadOnlyProcessDefinition
-
setInitial
-
toString
- Overrides:
toStringin classCoreActivity
-
getDescription
- Specified by:
getDescriptionin interfaceReadOnlyProcessDefinition
-
getLaneSets
- Returns:
- all lane-sets defined on this process-instance. Returns an empty list if none are defined.
-
setParticipantProcess
-
getParticipantProcess
-
isScope
public boolean isScope()Description copied from interface:PvmScopeIndicates whether this is a local scope for variables and events if true, there will _always_ be a scope execution created for it.Note: the fact that this is a scope does not mean that it is also a
sub process scope. -
getEventScope
Description copied from interface:PvmScopeThe event scope for an activity is the scope in which the activity listens for events. This may or may not be theflow scope.. Consider: boundary events have a different event scope than flow scope.The event scope is always a
scope.- Specified by:
getEventScopein interfacePvmScope- Returns:
- the event scope of the activity
-
getFlowScope
Description copied from interface:PvmScopeThe flow scope of the activity. The scope in which the activity itself is executed.Note: in order to ensure backwards compatible behavior, a flow scope is not necessarily a
a scope. Example: event sub processes.- Specified by:
getFlowScopein interfacePvmScope
-
getLevelOfSubprocessScope
Description copied from interface:PvmScopeThe "level of subprocess scope" as defined in bpmn: this is the subprocess containing the activity. Usually this is the same as the flow scope, instead if the activity is multi instance: in that case the activity is nested inside a mutli instance body but "at the same level of subprocess" as other activities which are siblings to the mi-body.- Specified by:
getLevelOfSubprocessScopein interfacePvmScope- Returns:
- the level of subprocess scope as defined in bpmn
-
isSubProcessScope
public boolean isSubProcessScope()Description copied from interface:PvmScopeIndicates whether this scope is a sub process scope. A sub process scope is a scope which contains "normal flow".Scopes which are flow scopes but not sub process scopes:- a multi instance body scope
- leaf scope activities which are pure event scopes (Example: User task with attached boundary event)
- Specified by:
isSubProcessScopein interfacePvmScope- Overrides:
isSubProcessScopein classScopeImpl- Returns:
- true if this is a sub process scope
-