public abstract class AbstractDynamicStateManager extends Object
| Modifier and Type | Field and Description |
|---|---|
protected org.slf4j.Logger |
LOGGER |
| Constructor and Description |
|---|
AbstractDynamicStateManager() |
| Modifier and Type | Method and Description |
|---|---|
protected List<ExecutionEntity> |
createBoundaryEvents(List<org.flowable.bpmn.model.BoundaryEvent> boundaryEvents,
ExecutionEntity execution,
CommandContext commandContext) |
protected ExecutionEntity |
createCallActivityInstance(org.flowable.bpmn.model.CallActivity callActivity,
ProcessDefinition subProcessDefinition,
ExecutionEntity parentExecution,
String initialActivityId,
CommandContext commandContext) |
protected List<ExecutionEntity> |
createEmbeddedSubProcessAndExecutions(Collection<MoveExecutionEntityContainer.FlowElementMoveEntry> moveToFlowElements,
List<ExecutionEntity> movingExecutions,
MoveExecutionEntityContainer moveExecutionEntityContainer,
ProcessInstanceChangeState processInstanceChangeState,
CommandContext commandContext) |
protected ExecutionEntity |
createEmbeddedSubProcessHierarchy(org.flowable.bpmn.model.SubProcess subProcess,
ExecutionEntity defaultParentExecution,
Map<String,org.flowable.bpmn.model.SubProcess> subProcessesToCreate,
Set<String> movingExecutionIds,
ProcessInstanceChangeState processInstanceChangeState,
CommandContext commandContext) |
protected MoveExecutionEntityContainer |
createMoveExecutionEntityContainer(MoveActivityIdContainer activityContainer,
List<ExecutionEntity> executions,
CommandContext commandContext) |
protected ExecutionEntity |
deleteDirectParentExecutions(String parentExecutionId,
Collection<MoveExecutionEntityContainer.FlowElementMoveEntry> moveToFlowElements,
Collection<String> executionIdsNotToDelete,
CommandContext commandContext) |
protected ExecutionEntity |
deleteParentExecutions(String parentExecutionId,
Collection<MoveExecutionEntityContainer.FlowElementMoveEntry> moveToFlowElements,
Collection<String> executionIdsNotToDelete,
CommandContext commandContext) |
protected ExecutionEntity |
deleteParentExecutions(String parentExecutionId,
Collection<MoveExecutionEntityContainer.FlowElementMoveEntry> moveToFlowElements,
CommandContext commandContext) |
protected void |
doMoveExecutionState(ProcessInstanceChangeState processInstanceChangeState,
CommandContext commandContext) |
protected void |
executeBoundaryEvents(Collection<org.flowable.bpmn.model.BoundaryEvent> boundaryEvents,
ExecutionEntity execution) |
protected void |
executeBoundaryEvents(List<org.flowable.bpmn.model.BoundaryEvent> boundaryEvents,
List<ExecutionEntity> boundaryEventExecutions) |
protected Optional<String> |
getFlowElementMultiInstanceParentId(org.flowable.bpmn.model.FlowElement flowElement) |
protected List<org.flowable.bpmn.model.FlowElement> |
getFlowElementsInSubProcess(org.flowable.bpmn.model.SubProcess subProcess,
Collection<org.flowable.bpmn.model.FlowElement> flowElements) |
protected void |
handleUserTaskNewAssignee(ExecutionEntity taskExecution,
String newAssigneeId,
CommandContext commandContext) |
protected abstract boolean |
isDirectFlowElementExecutionMigration(org.flowable.bpmn.model.FlowElement currentFlowElement,
org.flowable.bpmn.model.FlowElement newFlowElement) |
protected boolean |
isEventSubProcessStart(org.flowable.bpmn.model.FlowElement flowElement) |
protected boolean |
isExecutionInsideMultiInstance(ExecutionEntity execution) |
protected boolean |
isExpression(String variableName) |
protected boolean |
isFlowElementMultiInstance(org.flowable.bpmn.model.FlowElement flowElement) |
protected boolean |
isOnlyRemainingExecutionAtParentScope(ExecutionEntity executionEntity,
Set<String> ignoreExecutionIds,
CommandContext commandContext) |
protected boolean |
isSubProcessAncestorOfAnyExecution(String subProcessId,
List<ExecutionEntity> executions) |
protected boolean |
isSubProcessAncestorOfAnyNewFlowElements(String subProcessId,
Collection<MoveExecutionEntityContainer.FlowElementMoveEntry> flowElements) |
protected boolean |
isSubProcessContainerOfAnyFlowElement(String subProcessId,
Collection<MoveExecutionEntityContainer.FlowElementMoveEntry> moveToFlowElements) |
protected ExecutionEntity |
migrateExecutionEntity(ExecutionEntity parentExecutionEntity,
ExecutionEntity childExecution,
org.flowable.bpmn.model.FlowElement newFlowElement,
CommandContext commandContext) |
protected void |
prepareMoveExecutionEntityContainer(MoveExecutionEntityContainer moveExecutionContainer,
Optional<String> migrateToProcessDefinitionId,
CommandContext commandContext) |
protected void |
processCreatedEventSubProcess(org.flowable.bpmn.model.EventSubProcess eventSubProcess,
ExecutionEntity eventSubProcessExecution,
Set<String> movingExecutionIds,
CommandContext commandContext) |
protected Map<String,Object> |
processDataObjects(Collection<org.flowable.bpmn.model.ValuedDataObject> dataObjects) |
protected void |
processPendingEventSubProcessesStartEvents(ProcessInstanceChangeState processInstanceChangeState,
CommandContext commandContext) |
protected abstract Map<String,List<ExecutionEntity>> |
resolveActiveEmbeddedSubProcesses(String processInstanceId,
CommandContext commandContext) |
protected ExecutionEntity |
resolveActiveExecution(String executionId,
CommandContext commandContext) |
protected List<ExecutionEntity> |
resolveActiveExecutions(String processInstanceId,
String activityId,
CommandContext commandContext) |
protected org.flowable.bpmn.model.FlowElement |
resolveFlowElementFromBpmnModel(org.flowable.bpmn.model.BpmnModel bpmnModel,
String activityId) |
List<MoveExecutionEntityContainer> |
resolveMoveExecutionEntityContainers(ChangeActivityStateBuilderImpl changeActivityStateBuilder,
Optional<String> migrateToProcessDefinitionId,
Map<String,Object> variables,
CommandContext commandContext) |
protected ExecutionEntity |
resolveParentExecutionToDelete(ExecutionEntity execution,
Collection<MoveExecutionEntityContainer.FlowElementMoveEntry> moveToFlowElements) |
protected ProcessDefinition |
resolveProcessDefinition(String processDefinitionKey,
Integer processDefinitionVersion,
String tenantId,
CommandContext commandContext) |
protected void |
safeDeleteSubProcessInstance(String processInstanceId,
List<ExecutionEntity> executionsPool,
String deleteReason,
CommandContext commandContext) |
public List<MoveExecutionEntityContainer> resolveMoveExecutionEntityContainers(ChangeActivityStateBuilderImpl changeActivityStateBuilder, Optional<String> migrateToProcessDefinitionId, Map<String,Object> variables, CommandContext commandContext)
protected ExecutionEntity resolveActiveExecution(String executionId, CommandContext commandContext)
protected List<ExecutionEntity> resolveActiveExecutions(String processInstanceId, String activityId, CommandContext commandContext)
protected MoveExecutionEntityContainer createMoveExecutionEntityContainer(MoveActivityIdContainer activityContainer, List<ExecutionEntity> executions, CommandContext commandContext)
protected void prepareMoveExecutionEntityContainer(MoveExecutionEntityContainer moveExecutionContainer, Optional<String> migrateToProcessDefinitionId, CommandContext commandContext)
protected org.flowable.bpmn.model.FlowElement resolveFlowElementFromBpmnModel(org.flowable.bpmn.model.BpmnModel bpmnModel,
String activityId)
protected void doMoveExecutionState(ProcessInstanceChangeState processInstanceChangeState, CommandContext commandContext)
protected void processPendingEventSubProcessesStartEvents(ProcessInstanceChangeState processInstanceChangeState, CommandContext commandContext)
protected abstract Map<String,List<ExecutionEntity>> resolveActiveEmbeddedSubProcesses(String processInstanceId, CommandContext commandContext)
protected abstract boolean isDirectFlowElementExecutionMigration(org.flowable.bpmn.model.FlowElement currentFlowElement,
org.flowable.bpmn.model.FlowElement newFlowElement)
protected void safeDeleteSubProcessInstance(String processInstanceId, List<ExecutionEntity> executionsPool, String deleteReason, CommandContext commandContext)
protected ExecutionEntity deleteParentExecutions(String parentExecutionId, Collection<MoveExecutionEntityContainer.FlowElementMoveEntry> moveToFlowElements, CommandContext commandContext)
protected ExecutionEntity deleteParentExecutions(String parentExecutionId, Collection<MoveExecutionEntityContainer.FlowElementMoveEntry> moveToFlowElements, Collection<String> executionIdsNotToDelete, CommandContext commandContext)
protected ExecutionEntity deleteDirectParentExecutions(String parentExecutionId, Collection<MoveExecutionEntityContainer.FlowElementMoveEntry> moveToFlowElements, Collection<String> executionIdsNotToDelete, CommandContext commandContext)
protected boolean isSubProcessContainerOfAnyFlowElement(String subProcessId, Collection<MoveExecutionEntityContainer.FlowElementMoveEntry> moveToFlowElements)
protected ExecutionEntity resolveParentExecutionToDelete(ExecutionEntity execution, Collection<MoveExecutionEntityContainer.FlowElementMoveEntry> moveToFlowElements)
protected List<ExecutionEntity> createEmbeddedSubProcessAndExecutions(Collection<MoveExecutionEntityContainer.FlowElementMoveEntry> moveToFlowElements, List<ExecutionEntity> movingExecutions, MoveExecutionEntityContainer moveExecutionEntityContainer, ProcessInstanceChangeState processInstanceChangeState, CommandContext commandContext)
protected boolean isSubProcessAncestorOfAnyExecution(String subProcessId, List<ExecutionEntity> executions)
protected boolean isSubProcessAncestorOfAnyNewFlowElements(String subProcessId, Collection<MoveExecutionEntityContainer.FlowElementMoveEntry> flowElements)
protected List<org.flowable.bpmn.model.FlowElement> getFlowElementsInSubProcess(org.flowable.bpmn.model.SubProcess subProcess, Collection<org.flowable.bpmn.model.FlowElement> flowElements)
protected ExecutionEntity createEmbeddedSubProcessHierarchy(org.flowable.bpmn.model.SubProcess subProcess, ExecutionEntity defaultParentExecution, Map<String,org.flowable.bpmn.model.SubProcess> subProcessesToCreate, Set<String> movingExecutionIds, ProcessInstanceChangeState processInstanceChangeState, CommandContext commandContext)
protected Map<String,Object> processDataObjects(Collection<org.flowable.bpmn.model.ValuedDataObject> dataObjects)
protected void executeBoundaryEvents(Collection<org.flowable.bpmn.model.BoundaryEvent> boundaryEvents, ExecutionEntity execution)
protected ExecutionEntity createCallActivityInstance(org.flowable.bpmn.model.CallActivity callActivity, ProcessDefinition subProcessDefinition, ExecutionEntity parentExecution, String initialActivityId, CommandContext commandContext)
protected ExecutionEntity migrateExecutionEntity(ExecutionEntity parentExecutionEntity, ExecutionEntity childExecution, org.flowable.bpmn.model.FlowElement newFlowElement, CommandContext commandContext)
protected void handleUserTaskNewAssignee(ExecutionEntity taskExecution, String newAssigneeId, CommandContext commandContext)
protected boolean isEventSubProcessStart(org.flowable.bpmn.model.FlowElement flowElement)
protected List<ExecutionEntity> createBoundaryEvents(List<org.flowable.bpmn.model.BoundaryEvent> boundaryEvents, ExecutionEntity execution, CommandContext commandContext)
protected void executeBoundaryEvents(List<org.flowable.bpmn.model.BoundaryEvent> boundaryEvents, List<ExecutionEntity> boundaryEventExecutions)
protected boolean isExecutionInsideMultiInstance(ExecutionEntity execution)
protected Optional<String> getFlowElementMultiInstanceParentId(org.flowable.bpmn.model.FlowElement flowElement)
protected boolean isFlowElementMultiInstance(org.flowable.bpmn.model.FlowElement flowElement)
protected void processCreatedEventSubProcess(org.flowable.bpmn.model.EventSubProcess eventSubProcess,
ExecutionEntity eventSubProcessExecution,
Set<String> movingExecutionIds,
CommandContext commandContext)
protected boolean isOnlyRemainingExecutionAtParentScope(ExecutionEntity executionEntity, Set<String> ignoreExecutionIds, CommandContext commandContext)
protected boolean isExpression(String variableName)
protected ProcessDefinition resolveProcessDefinition(String processDefinitionKey, Integer processDefinitionVersion, String tenantId, CommandContext commandContext)
Copyright © 2019 Flowable. All rights reserved.