public abstract class AbstractMovePlanItemInstanceToTerminalStateOperation extends AbstractChangePlanItemInstanceStateOperation
PlanItemInstance to a terminal state (completed, terminated or failed).planItemInstanceEntitycommandContext, isNoop| Constructor and Description |
|---|
AbstractMovePlanItemInstanceToTerminalStateOperation(CommandContext commandContext,
PlanItemInstanceEntity planItemInstanceEntity) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
aggregateVariablesForAllInstances(PlanItemInstanceEntity planItemInstanceEntity,
org.flowable.cmmn.model.VariableAggregationDefinitions aggregations) |
protected void |
aggregateVariablesForSingleInstance(PlanItemInstanceEntity planItemInstanceEntity,
org.flowable.cmmn.model.VariableAggregationDefinitions aggregations) |
protected void |
cleanupRepetitionPlanItemInstances(boolean isRepeatingOnDelete,
boolean isWaitingForRepetitionPlanItemInstanceExists,
CmmnEngineConfiguration cmmnEngineConfiguration) |
protected void |
exitChildPlanItemInstances(String parentTransition,
String exitCriterionId,
String exitEventType)
Exits (terminates) all child plan items of the current one (e.g.
|
protected org.flowable.cmmn.model.VariableAggregationDefinitions |
getVariableAggregations() |
boolean |
hasRepetitionOnCollection(org.flowable.cmmn.model.PlanItem planItem) |
boolean |
hasRepetitionRule(org.flowable.cmmn.model.PlanItem planItem) |
boolean |
hasRepetitionRuleAndNoEntryCriteria(org.flowable.cmmn.model.PlanItem planItem)
Returns true, if the given plan item has a repetition rule, but no entry criteria to be satisfied and no collection based repetition.
|
boolean |
hasRepetitionRuleEntryCriteria(org.flowable.cmmn.model.PlanItem planItem) |
protected abstract void |
internalExecute()
Implementing classes should be aware that unlike extending from AbstractChangePlanItemInstanceStateOperation, this
method will be executed just before the deleting the entity
|
abstract boolean |
isEvaluateRepetitionRule() |
boolean |
isRepeatingOnDelete(String originalState,
String newState) |
boolean |
isWaitingForRepetitionPlanItemInstanceExists(PlanItemInstanceEntity planItemInstanceEntity) |
boolean |
isWithoutStageOrParentIsNotTerminated(PlanItemInstanceEntity planItemInstanceEntity) |
protected String |
resolveEventDefinitionKey(String eventType,
PlanItemInstanceEntity planItemInstanceEntity,
CmmnEngineConfiguration cmmnEngineConfiguration) |
void |
run() |
protected abstract boolean |
shouldAggregateForMultipleInstances()
Whether multi aggregation needs to be done.
|
protected abstract boolean |
shouldAggregateForSingleInstance()
Whether variable aggregation should be done when a single instance completes.
|
abortOperationIfNewStateEqualsOldState, createPlanItemLifeCycleEvent, getLifeCycleTransition, getNewState, getOperationName, isStateNotChanged, toStringgetCaseInstanceId, getCurrentTime, getPlanItemInstanceEntity, removeSentryRelatedData, setPlanItemInstanceEntitychildPlanItemInstanceForPlanItemExists, createPlanItemInstanceIfNeeded, createPlanItemInstancesForNewOrReactivatedStage, evaluateReactivationCondition, evaluateReactivationRule, getPlanItemCreationOrReactivationType, getPlanModel, getStage, isEventListenerWithAvailableCondition, isNoop, isStage, markAsNoop, setRepetitionCounterpublic AbstractMovePlanItemInstanceToTerminalStateOperation(CommandContext commandContext, PlanItemInstanceEntity planItemInstanceEntity)
public void run()
run in interface Runnablerun in class AbstractChangePlanItemInstanceStateOperationprotected org.flowable.cmmn.model.VariableAggregationDefinitions getVariableAggregations()
protected String resolveEventDefinitionKey(String eventType, PlanItemInstanceEntity planItemInstanceEntity, CmmnEngineConfiguration cmmnEngineConfiguration)
protected abstract void internalExecute()
internalExecute in class AbstractChangePlanItemInstanceStateOperationprotected void cleanupRepetitionPlanItemInstances(boolean isRepeatingOnDelete,
boolean isWaitingForRepetitionPlanItemInstanceExists,
CmmnEngineConfiguration cmmnEngineConfiguration)
public boolean isWithoutStageOrParentIsNotTerminated(PlanItemInstanceEntity planItemInstanceEntity)
public boolean hasRepetitionRuleAndNoEntryCriteria(org.flowable.cmmn.model.PlanItem planItem)
planItem - the plan item to testpublic boolean hasRepetitionOnCollection(org.flowable.cmmn.model.PlanItem planItem)
public boolean hasRepetitionRuleEntryCriteria(org.flowable.cmmn.model.PlanItem planItem)
public boolean hasRepetitionRule(org.flowable.cmmn.model.PlanItem planItem)
public boolean isWaitingForRepetitionPlanItemInstanceExists(PlanItemInstanceEntity planItemInstanceEntity)
protected void exitChildPlanItemInstances(String parentTransition, String exitCriterionId, String exitEventType)
parentTransition - the transition of the parent plan item to an ending state as it might have an impact on how to end the child plan itemexitCriterionId - the optional exit criterion being triggered on the parent to end it, might be nullexitEventType - the optional exit event type, if an exit sentry was triggered, as it might have an impact on the child ending as wellprotected void aggregateVariablesForSingleInstance(PlanItemInstanceEntity planItemInstanceEntity, org.flowable.cmmn.model.VariableAggregationDefinitions aggregations)
protected void aggregateVariablesForAllInstances(PlanItemInstanceEntity planItemInstanceEntity, org.flowable.cmmn.model.VariableAggregationDefinitions aggregations)
protected abstract boolean shouldAggregateForSingleInstance()
protected abstract boolean shouldAggregateForMultipleInstances()
public abstract boolean isEvaluateRepetitionRule()
Copyright © 2021 Flowable. All rights reserved.