예제 #1
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);
            }
        }
예제 #2
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);
        }