예제 #1
0
        ExecutionResult ReviseItinerary(RoutingSlipBuilder builder, IDictionary <string, object> results,
                                        Action <ItineraryBuilder> buildItinerary)
        {
            builder.SetSourceItinerary(_routingSlip.Itinerary.Skip(1));

            buildItinerary(builder);

            RoutingSlip routingSlip = builder.Build();

            if (routingSlip.RanToCompletion())
            {
                return(new RanToCompletionResult(_context.Bus, routingSlip, _activity.Name, _activityTrackingNumber,
                                                 results, _activity.Arguments));
            }

            return(new NextActivityResult(_context, routingSlip, _activity.Name, _activityTrackingNumber, results,
                                          _activity.Arguments));
        }