Beispiel #1
0
        public static IServiceActionAggregation01 AddOutputFilePathProviderActions(this IServiceAction _,
                                                                                   IServiceAction <IDateTimeDirectoryNameProvider> dateTimeDirectoryNameProviderAction,
                                                                                   IServiceAction <IDirectoryNameProvider> directoryNameProviderAction,
                                                                                   IServiceAction <IProcessNameProvider> processNameProviderAction,
                                                                                   IServiceAction <IProcessStartTimeProvider> processStartTimeProviderAction,
                                                                                   IServiceAction <IRootOutputDirectoryPathProvider> rootOutputDirectoryPathProviderAction,
                                                                                   IServiceAction <IStringlyTypedPathOperator> stringlyTypedPathOperatorAction)
        {
            var processDirectoryNameProviderAction = _.AddProcessDirectoryNameProviderAction(
                processNameProviderAction,
                directoryNameProviderAction);

            var processSpecificOutputDirectoryPathProviderAction = _.AddProcessSpecificOutputDirectoryPathProviderAction(
                processDirectoryNameProviderAction,
                rootOutputDirectoryPathProviderAction,
                stringlyTypedPathOperatorAction);

            var processStartTimeDirectoryNameProviderAction = _.AddProcessStartTimeDirectoryNameProviderAction(
                processStartTimeProviderAction,
                dateTimeDirectoryNameProviderAction);

            var processStartTimeSpecificOutputDirectoryPathProviderAction = _.AddProcessStartTimeSpecificOutputDirectoryPathProviderAction(
                processSpecificOutputDirectoryPathProviderAction,
                processStartTimeDirectoryNameProviderAction,
                stringlyTypedPathOperatorAction);

            var outputDirectoryPathProviderAction = _.AddOutputDirectoryPathProviderAction(
                processStartTimeSpecificOutputDirectoryPathProviderAction);

            var outputFilePathProviderAction = _.AddOutputFilePathProviderAction(
                outputDirectoryPathProviderAction,
                stringlyTypedPathOperatorAction);

            var output = new ServiceActionAggregation01
            {
                OutputDirectoryPathProviderAction  = outputDirectoryPathProviderAction,
                OutputFilePathProviderAction       = outputFilePathProviderAction,
                ProcessDirectoryNameProviderAction = processDirectoryNameProviderAction,
                ProcessSpecificOutputDirectoryPathProviderAction          = processSpecificOutputDirectoryPathProviderAction,
                ProcessStartTimeDirectoryNameProviderAction               = processStartTimeDirectoryNameProviderAction,
                ProcessStartTimeSpecificOutputDirectoryPathProviderAction = processStartTimeSpecificOutputDirectoryPathProviderAction,
            };

            return(output);
        }