Class MultiInstanceActivityBehavior

    • Field Detail

      • LOGGER

        protected static final org.slf4j.Logger LOGGER
      • loopCardinalityExpression

        protected Expression loopCardinalityExpression
      • completionConditionExpression

        protected Expression completionConditionExpression
      • collectionExpression

        protected Expression collectionExpression
      • collectionVariable

        protected String collectionVariable
      • collectionElementVariable

        protected String collectionElementVariable
      • collectionElementIndexVariable

        protected String collectionElementIndexVariable
    • Constructor Detail

      • MultiInstanceActivityBehavior

        public MultiInstanceActivityBehavior​(Activity activity,
                                             AbstractBpmnActivityBehavior innerActivityBehavior)
        Parameters:
        activity - The Activity which has multi instance behaviour
        innerActivityBehavior - The original ActivityBehavior of the activity that will be wrapped inside this behavior.
    • Method Detail

      • createInstances

        protected abstract int createInstances​(DelegateExecution execution)
      • executeCompensationBoundaryEvents

        protected void executeCompensationBoundaryEvents​(FlowElement flowElement,
                                                         DelegateExecution execution)
      • getProcessDefinition

        protected Process getProcessDefinition​(String processDefinitionId)
      • lastExecutionEnded

        public void lastExecutionEnded​(DelegateExecution execution)
      • resolveNrOfInstances

        protected int resolveNrOfInstances​(DelegateExecution execution)
      • executeOriginalBehavior

        protected void executeOriginalBehavior​(DelegateExecution execution,
                                               int loopCounter)
      • usesCollection

        protected boolean usesCollection()
      • isExtraScopeNeeded

        protected boolean isExtraScopeNeeded​(FlowNode flowNode)
      • resolveLoopCardinality

        protected int resolveLoopCardinality​(DelegateExecution execution)
      • completionConditionSatisfied

        protected boolean completionConditionSatisfied​(DelegateExecution execution)
      • removeLocalLoopVariable

        protected void removeLocalLoopVariable​(DelegateExecution execution,
                                               String variableName)
      • callActivityEndListeners

        protected void callActivityEndListeners​(DelegateExecution execution)
        Since no transitions are followed when leaving the inner activity, it is needed to call the end listeners yourself.
      • logLoopDetails

        protected void logLoopDetails​(DelegateExecution execution,
                                      String custom,
                                      int loopCounter,
                                      int nrOfCompletedInstances,
                                      int nrOfActiveInstances,
                                      int nrOfInstances)
      • dispatchActivityCompletedEvent

        protected void dispatchActivityCompletedEvent​(DelegateExecution execution)
      • getLoopCardinalityExpression

        public Expression getLoopCardinalityExpression()
      • setLoopCardinalityExpression

        public void setLoopCardinalityExpression​(Expression loopCardinalityExpression)
      • getCompletionConditionExpression

        public Expression getCompletionConditionExpression()
      • setCompletionConditionExpression

        public void setCompletionConditionExpression​(Expression completionConditionExpression)
      • getCollectionExpression

        public Expression getCollectionExpression()
      • setCollectionExpression

        public void setCollectionExpression​(Expression collectionExpression)
      • getCollectionVariable

        public String getCollectionVariable()
      • setCollectionVariable

        public void setCollectionVariable​(String collectionVariable)
      • getCollectionElementVariable

        public String getCollectionElementVariable()
      • setCollectionElementVariable

        public void setCollectionElementVariable​(String collectionElementVariable)
      • getCollectionElementIndexVariable

        public String getCollectionElementIndexVariable()
      • setCollectionElementIndexVariable

        public void setCollectionElementIndexVariable​(String collectionElementIndexVariable)
      • getLoopDataOutputRef

        public String getLoopDataOutputRef()
      • hasLoopDataOutputRef

        public boolean hasLoopDataOutputRef()
      • setLoopDataOutputRef

        public void setLoopDataOutputRef​(String loopDataOutputRef)
      • getOutputDataItem

        public String getOutputDataItem()
      • hasOutputDataItem

        public boolean hasOutputDataItem()
      • setOutputDataItem

        public void setOutputDataItem​(String outputDataItem)
      • getResultElementItem

        protected Object getResultElementItem​(Map<String,​Object> availableVariables)
      • propagateLoopDataOutputRefToProcessInstance

        protected void propagateLoopDataOutputRefToProcessInstance​(ExecutionEntity miRootExecution)