System.Activities.Statements.InternalState.ProcessTransitions C# (CSharp) Method

ProcessTransitions() private method

private ProcessTransitions ( NativeActivityMetadata metadata ) : void
metadata NativeActivityMetadata
return void
        void ProcessTransitions(NativeActivityMetadata metadata)
        {
            for (int i = 0; i < this.Transitions.Count; i++)
            {
                Transition transition = this.Transitions[i];
                InternalTransition internalTransition = null;
                Activity triggerActivity = transition.ActiveTrigger;

                if (!this.triggerInternalTransitionMapping.TryGetValue(triggerActivity, out internalTransition))
                {
                    metadata.AddChild(triggerActivity);

                    internalTransition = new InternalTransition
                    {
                        Trigger = triggerActivity,
                        InternalTransitionIndex = this.internalTransitions.Count,
                    };

                    this.triggerInternalTransitionMapping.Add(triggerActivity, internalTransition);
                    this.internalTransitions.Add(internalTransition);
                }

                AddTransitionData(metadata, internalTransition, transition);
            }
        }