Exemplo n.º 1
0
 protected internal virtual void performInstance(ActivityExecution execution, PvmActivity activity, int loopCounter)
 {
     setLoopVariable(execution, LOOP_COUNTER, loopCounter);
     evaluateCollectionVariable(execution, loopCounter);
     execution.Ended  = false;
     execution.Active = true;
     execution.executeActivity(activity);
 }
Exemplo n.º 2
0
        public override void doLeave(ActivityExecution execution)
        {
            // continue via the appropriate cancel boundary event
            ScopeImpl eventScope = (ScopeImpl)cancelBoundaryEvent.EventScope;

            ActivityExecution boundaryEventScopeExecution = execution.findExecutionForFlowScope(eventScope);

            boundaryEventScopeExecution.executeActivity(cancelBoundaryEvent);
        }
Exemplo n.º 3
0
        protected internal virtual void executeEscalationHandler(EscalationEventDefinition escalationEventDefinition, ActivityExecutionMappingCollector activityExecutionMappingCollector)
        {
            PvmActivity       escalationHandler   = escalationEventDefinition.EscalationHandler;
            PvmScope          escalationScope     = getScopeForEscalation(escalationEventDefinition);
            ActivityExecution escalationExecution = activityExecutionMappingCollector.getExecutionForScope(escalationScope);

            if (!string.ReferenceEquals(escalationEventDefinition.EscalationCodeVariable, null))
            {
                escalationExecution.setVariable(escalationEventDefinition.EscalationCodeVariable, escalation.EscalationCode);
            }

            escalationExecution.executeActivity(escalationHandler);
        }
Exemplo n.º 4
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
//ORIGINAL LINE: public void execute(org.camunda.bpm.engine.impl.pvm.delegate.ActivityExecution execution) throws Exception
        public virtual void execute(ActivityExecution execution)
        {
            IList <PvmActivity> startActivities = new List <PvmActivity>();

            foreach (PvmActivity activity in execution.Activity.Activities)
            {
                if (activity.IncomingTransitions.Count == 0)
                {
                    startActivities.Add(activity);
                }
            }

            foreach (PvmActivity startActivity in startActivities)
            {
                execution.executeActivity(startActivity);
            }
        }