Esempio n. 1
0
        public override void executionStarted(PvmExecutionImpl execution)
        {
            FormPropertyHelper.initFormPropertiesOnScope(formProperties, execution);

            // make sure create events are fired after form is submitted
            base.executionStarted(execution);
        }
Esempio n. 2
0
        public static void initFormPropertiesOnScope(VariableMap variables, PvmExecutionImpl execution)
        {
            ProcessDefinitionEntity pd = (ProcessDefinitionEntity)execution.ProcessDefinition;
            StartFormHandler        startFormHandler = pd.StartFormHandler;

            startFormHandler.submitFormVariables(variables, execution);
        }
Esempio n. 3
0
//JAVA TO C# CONVERTER WARNING: 'final' parameters are not available in .NET:
//ORIGINAL LINE: @Override public void leaveOnSatisfiedCondition(final org.camunda.bpm.engine.impl.persistence.entity.EventSubscriptionEntity eventSubscription, final org.camunda.bpm.engine.impl.core.variable.event.VariableEvent variableEvent)
        public virtual void leaveOnSatisfiedCondition(EventSubscriptionEntity eventSubscription, VariableEvent variableEvent)
        {
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.camunda.bpm.engine.impl.pvm.runtime.PvmExecutionImpl execution = eventSubscription.getExecution();
            PvmExecutionImpl execution = eventSubscription.Execution;

            if (execution != null && !execution.Ended && execution.Scope && conditionalEvent.tryEvaluate(variableEvent, execution))
            {
                execution.executeEventHandlerActivity(eventSubscription.Activity);
            }
        }
Esempio n. 4
0
//JAVA TO C# CONVERTER WARNING: 'final' parameters are not available in .NET:
//ORIGINAL LINE: @Override public void leaveOnSatisfiedCondition(final org.camunda.bpm.engine.impl.persistence.entity.EventSubscriptionEntity eventSubscription, final org.camunda.bpm.engine.impl.core.variable.event.VariableEvent variableEvent)
        public virtual void leaveOnSatisfiedCondition(EventSubscriptionEntity eventSubscription, VariableEvent variableEvent)
        {
            PvmExecutionImpl execution = eventSubscription.Execution;

            if (execution != null && !execution.Ended && execution.Scope && conditionalEvent.tryEvaluate(variableEvent, execution))
            {
                ActivityImpl activity = eventSubscription.Activity;
                activity = (ActivityImpl)activity.FlowScope;
                execution.executeEventHandlerActivity(activity);
            }
        }
Esempio n. 5
0
        public virtual void visit(ActivityExecution execution)
        {
            if (isProcessInstanceOfSubprocess(execution))
            {
                PvmExecutionImpl           superExecution             = (PvmExecutionImpl)execution.SuperExecution;
                ActivityImpl               activity                   = superExecution.getActivity();
                SubProcessActivityBehavior subProcessActivityBehavior = (SubProcessActivityBehavior)activity.ActivityBehavior;

                subProcessActivityBehavior.passOutputVariables(superExecution, execution);
            }
        }
Esempio n. 6
0
        public static ActivityBehavior getActivityBehavior(PvmExecutionImpl execution)
        {
            string id = execution.Id;

            PvmActivity activity = execution.getActivity();

            ensureNotNull(typeof(PvmException), "Execution '" + id + "' has no current activity.", "activity", activity);

            ActivityBehavior behavior = activity.ActivityBehavior;

            ensureNotNull(typeof(PvmException), "There is no behavior specified in " + activity + " for execution '" + id + "'.", "behavior", behavior);

            return(behavior);
        }
Esempio n. 7
0
//JAVA TO C# CONVERTER WARNING: 'final' parameters are not available in .NET:
//ORIGINAL LINE: @Override public void leaveOnSatisfiedCondition(final org.camunda.bpm.engine.impl.persistence.entity.EventSubscriptionEntity eventSubscription, final org.camunda.bpm.engine.impl.core.variable.event.VariableEvent variableEvent)
        public virtual void leaveOnSatisfiedCondition(EventSubscriptionEntity eventSubscription, VariableEvent variableEvent)
        {
            PvmExecutionImpl execution = eventSubscription.Execution;

            if (execution != null && !execution.Ended && variableEvent != null && conditionalEvent.tryEvaluate(variableEvent, execution) && execution.Active && execution.Scope)
            {
                if (isAfterEventBasedGateway)
                {
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.camunda.bpm.engine.impl.pvm.process.ActivityImpl activity = eventSubscription.getActivity();
                    ActivityImpl activity = eventSubscription.Activity;
                    execution.executeEventHandlerActivity(activity);
                }
                else
                {
                    leave(execution);
                }
            }
        }
Esempio n. 8
0
        public static void handleChildRemovalInScope(ExecutionEntity removedExecution)
        {
            ActivityImpl activity = removedExecution.getActivity();

            if (activity == null)
            {
                if (removedExecution.getSuperExecution() != null)
                {
                    removedExecution = removedExecution.getSuperExecution();
                    activity         = removedExecution.getActivity();
                    if (activity == null)
                    {
                        return;
                    }
                }
                else
                {
                    return;
                }
            }
            ScopeImpl flowScope = activity.FlowScope;

            PvmExecutionImpl scopeExecution         = removedExecution.getParentScopeExecution(false);
            PvmExecutionImpl executionInParentScope = removedExecution.Concurrent ? removedExecution : removedExecution.Parent;

            if (flowScope.ActivityBehavior != null && flowScope.ActivityBehavior is ModificationObserverBehavior)
            {
                // let child removal be handled by the scope itself
                ModificationObserverBehavior behavior = (ModificationObserverBehavior)flowScope.ActivityBehavior;
                behavior.destroyInnerInstance(executionInParentScope);
            }
            else
            {
                if (executionInParentScope.Concurrent)
                {
                    executionInParentScope.remove();
                    scopeExecution.tryPruneLastConcurrentChild();
                    scopeExecution.forceUpdate();
                }
            }
        }
Esempio n. 9
0
 public DelayedVariableEvent(PvmExecutionImpl targetScope, VariableEvent @event)
 {
     this.targetScope = targetScope;
     this.@event      = @event;
 }