Class CaseExecutionImpl
- java.lang.Object
-
- org.camunda.bpm.engine.impl.core.variable.scope.AbstractVariableScope
-
- org.camunda.bpm.engine.impl.core.instance.CoreExecution
-
- org.camunda.bpm.engine.impl.cmmn.execution.CmmnExecution
-
- org.camunda.bpm.engine.impl.cmmn.execution.CaseExecutionImpl
-
- All Implemented Interfaces:
Serializable
,BaseDelegateExecution
,CmmnModelExecutionContext
,DelegateCaseExecution
,ProcessEngineServicesAware
,VariableScope
,CmmnActivityExecution
,CmmnCaseInstance
,VariableEventDispatcher
public class CaseExecutionImpl extends CmmnExecution implements Serializable
- Author:
- Roman Smirnov
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected List<CaseExecutionImpl>
caseExecutions
protected CaseExecutionImpl
caseInstance
protected List<CaseSentryPartImpl>
caseSentryParts
protected static CmmnBehaviorLogger
LOG
protected CaseExecutionImpl
parent
protected CaseExecutionImpl
subCaseInstance
protected ExecutionImpl
subProcessInstance
protected CaseExecutionImpl
superCaseExecution
protected ExecutionImpl
superExecution
protected VariableStore<SimpleVariableInstance>
variableStore
-
Fields inherited from class org.camunda.bpm.engine.impl.cmmn.execution.CmmnExecution
activity, caseDefinition, currentState, entryCriterionSatisfied, previousState, required, task, variableEventsQueue
-
Fields inherited from class org.camunda.bpm.engine.impl.core.instance.CoreExecution
businessKey, businessKeyWithoutCascade, eventName, eventSource, id, listenerIndex, skipCustomListeners, skipIoMapping, skipSubprocesses, tenantId
-
Fields inherited from class org.camunda.bpm.engine.impl.core.variable.scope.AbstractVariableScope
cachedElContext
-
-
Constructor Summary
Constructors Constructor Description CaseExecutionImpl()
-
Method Summary
-
Methods inherited from class org.camunda.bpm.engine.impl.cmmn.execution.CmmnExecution
addIdIfNotSatisfied, checkAndFireEntryCriteria, checkAndFireExitCriteria, close, collectAffectedSentries, collectAffectedSentriesWithVariableOnParts, collectAllSentries, collectCaseExecutionsInExecutionTree, collectSentryParts, complete, containsIfPartAndExecutionActive, create, create, createChildExecutions, createIfPart, createOnPart, createSentryPart, createSentryParts, createTask, createVariableOnPart, deleteCascade, disable, dispatchEvent, enable, exit, findCaseExecution, fireEntryCriteria, fireExitCriteria, fireIfOnlySentryParts, fireSentries, forceUpdateOnCaseSentryParts, forceUpdateOnSentries, getActivity, getAffectedSentryParts, getBusinessKey, getCaseBusinessKey, getCaseDefinition, getCaseInstanceId, getCurrentState, getParentVariableScope, getPrevious, getPreviousState, getSatisfiedSentries, getSatisfiedSentriesInExecutionTree, getState, getTask, getVariableEventQueue, getVariableScopeKey, handleChildTransition, handleVariableTransition, hasVariableWithSameNameInParent, invokeVariableListeners, isActive, isAvailable, isCaseInstanceExecution, isClosed, isCompleted, isDisabled, isEnabled, isEntryCriterionSatisfied, isFailed, isNew, isNotSatisfiedIfPartOnly, isRequired, isSentryPartsSatisfied, isSentrySatisfied, isSuspended, isSuspending, isTerminated, isTerminating, manualComplete, manualStart, occur, parentComplete, parentResume, parentSuspend, parentTerminate, performExit, performParentSuspension, performParentTerminate, performSuspension, performTerminate, queueVariableEvent, reactivate, reenable, remove, resetSentries, resetSentryParts, resume, setActivity, setCaseDefinition, setCurrentState, setPrevious, setRequired, setState, setTask, start, suspend, terminate, triggerChildExecutionsLifecycle
-
Methods inherited from class org.camunda.bpm.engine.impl.core.instance.CoreExecution
getBusinessKeyWithoutCascade, getEventName, getEventSource, getListenerIndex, getTenantId, hasFailedOnEndListeners, invokeListener, isSkipCustomListeners, isSkipIoMappings, isSkipSubprocesses, performOperation, performOperationSync, setBusinessKey, setEventName, setEventSource, setId, setListenerIndex, setSkipCustomListeners, setSkipIoMappings, setSkipSubprocesseses, setTenantId
-
Methods inherited from class org.camunda.bpm.engine.impl.core.variable.scope.AbstractVariableScope
collectVariableNames, collectVariables, getCachedElContext, getSourceActivityVariableScope, getValueFromVariableInstance, getVariable, getVariable, getVariableInstance, getVariableInstanceLocal, getVariableInstancesLocal, getVariableInstancesLocal, getVariableLocal, getVariableLocal, getVariableLocalTyped, getVariableLocalTyped, getVariableNames, getVariableNamesLocal, getVariables, getVariablesLocal, getVariablesLocalTyped, getVariablesLocalTyped, getVariablesTyped, getVariablesTyped, getVariableTyped, getVariableTyped, hasVariable, hasVariableLocal, hasVariables, hasVariablesLocal, initializeVariableStore, invokeVariableLifecycleListenersCreate, invokeVariableLifecycleListenersCreate, invokeVariableLifecycleListenersDelete, invokeVariableLifecycleListenersDelete, invokeVariableLifecycleListenersUpdate, invokeVariableLifecycleListenersUpdate, removeVariable, removeVariable, removeVariableLocal, removeVariableLocal, removeVariables, removeVariables, removeVariablesLocal, removeVariablesLocal, setCachedElContext, setVariable, setVariable, setVariable, setVariable, setVariableLocal, setVariableLocal, setVariableLocal, setVariables, setVariables, setVariablesLocal, setVariablesLocal
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.camunda.bpm.engine.delegate.DelegateCaseExecution
getEventName, getTenantId
-
Methods inherited from interface org.camunda.bpm.engine.delegate.VariableScope
getVariable, getVariableLocal, getVariableLocalTyped, getVariableLocalTyped, getVariableNames, getVariableNamesLocal, getVariables, getVariablesLocal, getVariablesLocalTyped, getVariablesLocalTyped, getVariablesTyped, getVariablesTyped, getVariableTyped, getVariableTyped, hasVariable, hasVariableLocal, hasVariables, hasVariablesLocal, removeVariable, removeVariableLocal, removeVariables, removeVariables, removeVariablesLocal, removeVariablesLocal, setVariable, setVariableLocal, setVariables, setVariablesLocal
-
-
-
-
Field Detail
-
LOG
protected static final CmmnBehaviorLogger LOG
-
caseExecutions
protected List<CaseExecutionImpl> caseExecutions
-
caseSentryParts
protected List<CaseSentryPartImpl> caseSentryParts
-
caseInstance
protected CaseExecutionImpl caseInstance
-
parent
protected CaseExecutionImpl parent
-
subProcessInstance
protected ExecutionImpl subProcessInstance
-
superExecution
protected ExecutionImpl superExecution
-
subCaseInstance
protected CaseExecutionImpl subCaseInstance
-
superCaseExecution
protected CaseExecutionImpl superCaseExecution
-
variableStore
protected VariableStore<SimpleVariableInstance> variableStore
-
-
Method Detail
-
getCaseDefinitionId
public String getCaseDefinitionId()
- Specified by:
getCaseDefinitionId
in interfaceDelegateCaseExecution
-
getParent
public CaseExecutionImpl getParent()
Description copied from class:CmmnExecution
ensures initialization and returns the parent- Specified by:
getParent
in interfaceCmmnActivityExecution
- Specified by:
getParent
in classCmmnExecution
- Returns:
- a
parent
or null.
-
setParent
public void setParent(CmmnExecution parent)
- Specified by:
setParent
in classCmmnExecution
-
getParentId
public String getParentId()
- Specified by:
getParentId
in interfaceDelegateCaseExecution
-
getActivityId
public String getActivityId()
- Specified by:
getActivityId
in interfaceDelegateCaseExecution
-
getActivityName
public String getActivityName()
- Specified by:
getActivityName
in interfaceDelegateCaseExecution
-
getCaseExecutions
public List<CaseExecutionImpl> getCaseExecutions()
Description copied from interface:CmmnActivityExecution
Returns a
List
of child case executions. Ifthis
case execution has no child case executions an emptyList
will be returned.- Specified by:
getCaseExecutions
in interfaceCmmnActivityExecution
- Specified by:
getCaseExecutions
in classCmmnExecution
- Returns:
- a
List
of child case executions.
-
getCaseExecutionsInternal
protected List<CaseExecutionImpl> getCaseExecutionsInternal()
- Specified by:
getCaseExecutionsInternal
in classCmmnExecution
-
getCaseInstance
public CaseExecutionImpl getCaseInstance()
Description copied from class:CmmnExecution
ensures initialization and returns the process instance.- Specified by:
getCaseInstance
in classCmmnExecution
-
setCaseInstance
public void setCaseInstance(CmmnExecution caseInstance)
- Specified by:
setCaseInstance
in classCmmnExecution
-
getSuperExecution
public ExecutionImpl getSuperExecution()
- Specified by:
getSuperExecution
in classCmmnExecution
-
setSuperExecution
public void setSuperExecution(PvmExecutionImpl superExecution)
- Specified by:
setSuperExecution
in classCmmnExecution
-
getSubProcessInstance
public ExecutionImpl getSubProcessInstance()
- Specified by:
getSubProcessInstance
in classCmmnExecution
-
setSubProcessInstance
public void setSubProcessInstance(PvmExecutionImpl subProcessInstance)
- Specified by:
setSubProcessInstance
in classCmmnExecution
-
createSubProcessInstance
public PvmExecutionImpl createSubProcessInstance(PvmProcessDefinition processDefinition)
Description copied from interface:CmmnActivityExecution
Creates a new sub process instance.
This
case execution will be the super case execution of the created sub process instance.- Specified by:
createSubProcessInstance
in interfaceCmmnActivityExecution
- Specified by:
createSubProcessInstance
in classCmmnExecution
- Parameters:
processDefinition
- ThePvmProcessDefinition
of the subprocess.
-
createSubProcessInstance
public PvmExecutionImpl createSubProcessInstance(PvmProcessDefinition processDefinition, String businessKey)
Description copied from interface:CmmnActivityExecution
Creates a new sub process instance.
This
case execution will be the super case execution of the created sub process instance.- Specified by:
createSubProcessInstance
in interfaceCmmnActivityExecution
- Specified by:
createSubProcessInstance
in classCmmnExecution
- Parameters:
processDefinition
- ThePvmProcessDefinition
of the subprocess.businessKey
- The businessKey to be set on sub process instance.
-
createSubProcessInstance
public PvmExecutionImpl createSubProcessInstance(PvmProcessDefinition processDefinition, String businessKey, String caseInstanceId)
Description copied from interface:CmmnActivityExecution
Creates a new sub process instance.
This
case execution will be the super case execution of the created sub process instance.- Specified by:
createSubProcessInstance
in interfaceCmmnActivityExecution
- Specified by:
createSubProcessInstance
in classCmmnExecution
- Parameters:
processDefinition
- ThePvmProcessDefinition
of the subprocess.businessKey
- The businessKey to be set on sub process instance.caseInstanceId
- The caseInstanceId to be set on sub process instance.
-
getSubCaseInstance
public CaseExecutionImpl getSubCaseInstance()
- Specified by:
getSubCaseInstance
in classCmmnExecution
-
setSubCaseInstance
public void setSubCaseInstance(CmmnExecution subCaseInstance)
- Specified by:
setSubCaseInstance
in classCmmnExecution
-
createSubCaseInstance
public CaseExecutionImpl createSubCaseInstance(CmmnCaseDefinition caseDefinition)
Description copied from interface:CmmnActivityExecution
Creates a new sub case instance.
This
case execution will be the super case execution of the created sub case instance.- Specified by:
createSubCaseInstance
in interfaceCmmnActivityExecution
- Specified by:
createSubCaseInstance
in classCmmnExecution
- Parameters:
caseDefinition
- TheCmmnCaseDefinition
of the sub case instance.
-
createSubCaseInstance
public CaseExecutionImpl createSubCaseInstance(CmmnCaseDefinition caseDefinition, String businessKey)
Description copied from interface:CmmnActivityExecution
Creates a new sub case instance.
This
case execution will be the super case execution of the created sub case instance.- Specified by:
createSubCaseInstance
in interfaceCmmnActivityExecution
- Specified by:
createSubCaseInstance
in classCmmnExecution
- Parameters:
caseDefinition
- TheCmmnCaseDefinition
of the sub case instance.businessKey
- The businessKey to be set on sub case instance.
-
getSuperCaseExecution
public CaseExecutionImpl getSuperCaseExecution()
- Specified by:
getSuperCaseExecution
in classCmmnExecution
-
setSuperCaseExecution
public void setSuperCaseExecution(CmmnExecution superCaseExecution)
- Specified by:
setSuperCaseExecution
in classCmmnExecution
-
getCaseSentryParts
public List<CaseSentryPartImpl> getCaseSentryParts()
- Specified by:
getCaseSentryParts
in classCmmnExecution
-
getSentries
protected Map<String,List<CmmnSentryPart>> getSentries()
- Specified by:
getSentries
in classCmmnExecution
-
findSentry
protected List<CaseSentryPartImpl> findSentry(String sentryId)
- Specified by:
findSentry
in classCmmnExecution
-
addSentryPart
protected void addSentryPart(CmmnSentryPart sentryPart)
- Specified by:
addSentryPart
in classCmmnExecution
-
newSentryPart
protected CmmnSentryPart newSentryPart()
- Specified by:
newSentryPart
in classCmmnExecution
-
createCaseExecution
protected CaseExecutionImpl createCaseExecution(CmmnActivity activity)
- Specified by:
createCaseExecution
in classCmmnExecution
-
newCaseExecution
protected CaseExecutionImpl newCaseExecution()
- Specified by:
newCaseExecution
in classCmmnExecution
-
getVariableStore
protected VariableStore<CoreVariableInstance> getVariableStore()
- Specified by:
getVariableStore
in classAbstractVariableScope
-
getVariableInstanceFactory
protected VariableInstanceFactory<CoreVariableInstance> getVariableInstanceFactory()
- Specified by:
getVariableInstanceFactory
in classAbstractVariableScope
-
getVariableInstanceLifecycleListeners
protected List<VariableInstanceLifecycleListener<CoreVariableInstance>> getVariableInstanceLifecycleListeners()
- Specified by:
getVariableInstanceLifecycleListeners
in classAbstractVariableScope
-
toString
public String toString()
- Overrides:
toString
in classCmmnExecution
-
getToStringIdentity
protected String getToStringIdentity()
- Overrides:
getToStringIdentity
in classCmmnExecution
-
getId
public String getId()
Description copied from interface:BaseDelegateExecution
Unique id of this path of execution that can be used as a handle to provide external signals back into the engine after wait states.- Specified by:
getId
in interfaceBaseDelegateExecution
- Specified by:
getId
in interfaceDelegateCaseExecution
- Overrides:
getId
in classCoreExecution
-
getProcessEngineServices
public ProcessEngineServices getProcessEngineServices()
Description copied from interface:ProcessEngineServicesAware
Returns theProcessEngineServices
providing access to the public API of the process engine.- Specified by:
getProcessEngineServices
in interfaceProcessEngineServicesAware
- Returns:
- the
ProcessEngineServices
.
-
getProcessEngine
public ProcessEngine getProcessEngine()
Description copied from interface:ProcessEngineServicesAware
Returns theProcessEngine
providing access to the public API of the process engine.- Specified by:
getProcessEngine
in interfaceProcessEngineServicesAware
- Returns:
- the
ProcessEngine
.
-
getCmmnModelElementInstance
public CmmnElement getCmmnModelElementInstance()
Description copied from interface:CmmnModelExecutionContext
Returns the currently executed Element in the Cmmn Model. This method returns a
CmmnElement
which may be casted to the concrete type of the Cmmn Model Element currently executed.- Specified by:
getCmmnModelElementInstance
in interfaceCmmnModelExecutionContext
- Returns:
- the
CmmnElement
corresponding to the current Cmmn Model Element
-
getCmmnModelInstance
public CmmnModelInstance getCmmnModelInstance()
Description copied from interface:CmmnModelExecutionContext
Returns theCmmnModelInstance
for the currently executed Cmmn Model- Specified by:
getCmmnModelInstance
in interfaceCmmnModelExecutionContext
- Returns:
- the current
CmmnModelInstance
-
-