예제 #1
0
        private static ActivityInfo[] GetCompensableActivityChildren(CompensableActivity activity)
        {
            var children = new List <ActivityInfo>();

            if (activity.Body != null)
            {
                children.Add(new ActivityInfo(activity.Body, activity, "Body"));
            }

            if (activity.CompensationHandler != null)
            {
                children.Add(new ActivityInfo(activity.CompensationHandler, activity, "CompensationHandler"));
            }

            if (activity.ConfirmationHandler != null)
            {
                children.Add(new ActivityInfo(activity.ConfirmationHandler, activity, "ConfirmationHandler"));
            }

            if (activity.CancellationHandler != null)
            {
                children.Add(new ActivityInfo(activity.CancellationHandler, activity, "CancellationHandler"));
            }

            return(children.ToArray());
        }
예제 #2
0
        private static ActivityView BuildCompensableActivityView(CompensableActivity source)
        {
            string activityId = ObjectIdManager.GetId(source);

            var view = new CompensableActivityView(activityId)
            {
                ActivityName = source.DisplayName,
            };

            return(view);
        }