示例#1
0
        public MovePathCommand(
            IFileService fileService)
            : base(typeof(MovePathCommand).Namespace, nameof(MovePathCommand), HelpDefinition)
        {
            CommandSourcePathParameter = new CommandParameterDefinition(
                "sourcepath",
                CommandParameterDefinition.TypeValue.String,
                "Source file or folder for move",
                "sp");

            CommandDestinationFolderParameter = new CommandParameterDefinition(
                "destionationfolder",
                CommandParameterDefinition.TypeValue.String,
                "destination folder",
                "df");

            CommandPatternParameter = new CommandParameterDefinition(
                "pattern",
                CommandParameterDefinition.TypeValue.String,
                "file pattern if move a folder. Default value: *.*",
                "p");

            CommandParametersDefinition.Add(CommandSourcePathParameter);
            CommandParametersDefinition.Add(CommandDestinationFolderParameter);
            CommandParametersDefinition.Add(CommandPatternParameter);

            FileService = fileService ?? throw new ArgumentNullException(nameof(fileService));
        }
示例#2
0
        public ExecutePeriodicallyWorkflowOnFetchCommand(IFileService fileService)
            : base(typeof(ExecutePeriodicallyWorkflowOnFetchCommand).Namespace, nameof(ExecutePeriodicallyWorkflowOnFetchCommand), HelpDefinition)
        {
            CommandStringConnectionParameter = new CommandParameterDefinition("stringconnection",
                                                                              CommandParameterDefinition.TypeValue.String,
                                                                              "String connection for Dynamics", "s");

            CommandWorkflowIdParameter = new CommandParameterDefinition("id",
                                                                        CommandParameterDefinition.TypeValue.Guid,
                                                                        "Assembly id in CRM", "i");

            CommandWorkflowNameParameter = new CommandParameterDefinition("name",
                                                                          CommandParameterDefinition.TypeValue.String,
                                                                          "Assembly name in CRM", "n");

            FetchFilePathParameter = new CommandParameterDefinition("fetch",
                                                                    CommandParameterDefinition.TypeValue.String,
                                                                    "Path of file xml with the fetch inside", "f");

            PeriodParameter = new CommandParameterDefinition("period",
                                                             CommandParameterDefinition.TypeValue.Integer,
                                                             "Seconds for wait before execute a new fetch", "p");

            RegisterCommandParameter(CommandWorkflowIdParameter);
            RegisterCommandParameter(CommandStringConnectionParameter);
            RegisterCommandParameter(CommandWorkflowNameParameter);
            RegisterCommandParameter(FetchFilePathParameter);
            RegisterCommandParameter(PeriodParameter);

            FileService = fileService ?? throw new ArgumentNullException(nameof(fileService));
        }
示例#3
0
        public PipelineCommand(
            List <CommandBase> registeredCommands,
            ILoggerService loggerService,
            IFileService fileService,
            IRegistryService registryService,
            ICryptoService cryptoService,
            IStoredDataService storedDataService)
            : base(typeof(PipelineCommand).Namespace, nameof(PipelineCommand), HelpDefinition)
        {
            CommandPathParameter = new CommandParameterDefinition("path",
                                                                  CommandParameterDefinition.TypeValue.String,
                                                                  "Path with the ddpipeline.json file", "p");
            CommandNameParameter = new CommandParameterDefinition(
                "name",
                CommandParameterDefinition.TypeValue.String,
                "Name of the registered pipeline", "n");
            DebugParameter = new CommandParameterDefinition(
                "debug",
                CommandParameterDefinition.TypeValue.Boolean,
                "Initialize in debug mode. Will stop after every steps",
                "debug");

            RegisterCommandParameter(CommandPathParameter);
            RegisterCommandParameter(CommandNameParameter);
            RegisterCommandParameter(DebugParameter);

            RegisteredCommands = registeredCommands ?? throw new ArgumentNullException(nameof(registeredCommands));
            LoggerService      = loggerService ?? throw new ArgumentNullException(nameof(loggerService));
            FileService        = fileService ?? throw new ArgumentNullException(nameof(fileService));
            RegistryService    = registryService ?? throw new ArgumentNullException(nameof(registryService));
            CryptoService      = cryptoService ?? throw new ArgumentNullException(nameof(cryptoService));
            StoredDataService  = storedDataService ?? throw new ArgumentNullException(nameof(storedDataService));
        }
示例#4
0
        public AddPipelineCommand(
            IStoredDataService storedDataService,
            IFileService fileService)
            : base(typeof(AddPipelineCommand).Namespace, nameof(AddPipelineCommand), HelpDefinition)
        {
            CommandPathParameter = new CommandParameterDefinition("path",
                                                                  CommandParameterDefinition.TypeValue.String,
                                                                  "Path to the pipeline json file", "p");

            CommandNameParameter = new CommandParameterDefinition("name",
                                                                  CommandParameterDefinition.TypeValue.String,
                                                                  "Pipeline name", "n");

            CommandDescriptionParameter = new CommandParameterDefinition("description",
                                                                         CommandParameterDefinition.TypeValue.String,
                                                                         "Pipeline description", "d");

            RegisterCommandParameter(CommandPathParameter);
            RegisterCommandParameter(CommandNameParameter);
            RegisterCommandParameter(CommandDescriptionParameter);

            StoredDataService = storedDataService
                                ?? throw new ArgumentNullException(nameof(storedDataService));
            FileService = fileService ?? throw new ArgumentNullException(nameof(fileService));
        }
示例#5
0
        public AddParameterCommand(
            IStoredDataService storedDataService)
            : base(typeof(AddParameterCommand).Namespace, nameof(AddParameterCommand), HelpDefinition)
        {
            CommandKeyParameter = new CommandParameterDefinition("key",
                                                                 CommandParameterDefinition.TypeValue.String,
                                                                 "Key for the parameter. For replace with the value use [[key]]", "k");

            CommandValueParameter = new CommandParameterDefinition("value",
                                                                   CommandParameterDefinition.TypeValue.String,
                                                                   "Value which will be replaced when used the key", "v");

            CommandIsEncryptedParameter = new CommandParameterDefinition("encrypted",
                                                                         CommandParameterDefinition.TypeValue.Boolean,
                                                                         "Encrypt the parameter (Use for store passwords)", "e");

            CommandIsAutoIncrementParameter = new CommandParameterDefinition("autoincrement",
                                                                             CommandParameterDefinition.TypeValue.Boolean,
                                                                             "Every time is used, the value will be autoincremented. Value should be integer.", "a");
            RegisterCommandParameter(CommandKeyParameter);
            RegisterCommandParameter(CommandValueParameter);
            RegisterCommandParameter(CommandIsEncryptedParameter);
            RegisterCommandParameter(CommandIsAutoIncrementParameter);

            StoredDataService = storedDataService
                                ?? throw new ArgumentNullException(nameof(storedDataService));
        }
示例#6
0
        public EchoCommand()
            : base(typeof(EchoCommand).Namespace, nameof(EchoCommand), HelpDefinition)
        {
            CommandTextParameter = new CommandParameterDefinition("text",
                                                                  CommandParameterDefinition.TypeValue.String,
                                                                  "Text for echo", "t");

            RegisterCommandParameter(CommandTextParameter);
        }
示例#7
0
        public ConfirmCommand()
            : base(typeof(ConfirmCommand).Namespace, nameof(ConfirmCommand), HelpDefinition)
        {
            CommandQuestionParameter = new CommandParameterDefinition(
                "question",
                CommandParameterDefinition.TypeValue.String,
                "Question to prompt to the user",
                "q");

            RegisterCommandParameter(CommandQuestionParameter);
        }
示例#8
0
 public OpenVisualStudioCommand(
     IPromptCommandService promptCommandService,
     IFileService directoryService)
     : base(typeof(OpenVisualStudioCommand).Namespace, nameof(OpenVisualStudioCommand), HelpDefinition)
 {
     RootParameter = new CommandParameterDefinition(
         "root",
         CommandParameterDefinition.TypeValue.Boolean,
         "Indicates if open the program as administrator");
     PromptCommandService = promptCommandService ?? throw new ArgumentNullException(nameof(promptCommandService));
     DirectoryService     = directoryService ?? throw new ArgumentNullException(nameof(directoryService));
 }
示例#9
0
        public DeleteParameterCommand(
            IStoredDataService storedDataService)
            : base(typeof(DeleteParameterCommand).Namespace, nameof(DeleteParameterCommand), HelpDefinition)
        {
            CommandKeyParameter = new CommandParameterDefinition("key",
                                                                 CommandParameterDefinition.TypeValue.String,
                                                                 "Parameter key for delete", "k");

            RegisterCommandParameter(CommandKeyParameter);

            StoredDataService = storedDataService
                                ?? throw new ArgumentNullException(nameof(storedDataService));
        }
示例#10
0
        public ZipCommand(
            IFileService fileService)
            : base(typeof(ZipCommand).Namespace, nameof(ZipCommand), HelpDefinition)
        {
            CommandPathParameter = new CommandParameterDefinition(
                "path",
                CommandParameterDefinition.TypeValue.String,
                "Indicates the path (file or directory) for zip",
                "p");

            CommandParametersDefinition.Add(CommandPathParameter);
            FileService = fileService ?? throw new ArgumentNullException(nameof(fileService));
        }
示例#11
0
        public DeleteAliasCommand(
            IStoredDataService storedDataService)
            : base(typeof(DeleteAliasCommand).Namespace, nameof(DeleteAliasCommand), HelpDefinition)
        {
            CommandAliasParameter = new CommandParameterDefinition("alias",
                                                                   CommandParameterDefinition.TypeValue.String,
                                                                   "Alias name", "a");

            RegisterCommandParameter(CommandAliasParameter);

            StoredDataService = storedDataService
                                ?? throw new ArgumentNullException(nameof(storedDataService));
        }
示例#12
0
        public DeleteTemplateCommand(
            IStoredDataService storedDataService)
            : base(typeof(DeleteTemplateCommand).Namespace, nameof(DeleteTemplateCommand), HelpDefinition)
        {
            CommandNameParameter = new CommandParameterDefinition("name",
                                                                  CommandParameterDefinition.TypeValue.String,
                                                                  "Template name", "n");

            RegisterCommandParameter(CommandNameParameter);

            StoredDataService = storedDataService
                                ?? throw new ArgumentNullException(nameof(storedDataService));
        }
示例#13
0
        public ShowComandsHistoryCommand(
            IStoredDataService storedDataService)
            : base(typeof(ShowComandsHistoryCommand).Namespace, nameof(ShowComandsHistoryCommand), HelpDefinition)
        {
            StoredDataService = storedDataService
                                ?? throw new ArgumentNullException(nameof(storedDataService));

            CountParameter = new CommandParameterDefinition("count",
                                                            CommandParameterDefinition.TypeValue.Integer,
                                                            "Count of records. Default value Count=10", "c");

            RegisterCommandParameter(CountParameter);
        }
示例#14
0
        public GetTokenCommand()
            : base(typeof(GetTokenCommand).Namespace, nameof(GetTokenCommand), HelpDefinition)
        {
            CommandStringConnectionParameter = new CommandParameterDefinition("stringconnection",
                                                                              CommandParameterDefinition.TypeValue.String,
                                                                              "String connection for Dynamics", "s");

            CommandClientIdParameter = new CommandParameterDefinition("clientid",
                                                                      CommandParameterDefinition.TypeValue.String,
                                                                      "Client Id (or application Id) obtained from Azure AD", "c");

            RegisterCommandParameter(CommandStringConnectionParameter);
            RegisterCommandParameter(CommandClientIdParameter);
        }
示例#15
0
        public ReplaceFileContentCommand(
            IFileService fileService)
            : base(typeof(ReplaceFileContentCommand).Namespace, nameof(ReplaceFileContentCommand), HelpDefinition)
        {
            CommandPathParameter = new CommandParameterDefinition(
                "path",
                CommandParameterDefinition.TypeValue.String,
                "Indicates the path (file or directory) for replacing",
                "p");

            CommandOldValueParameter = new CommandParameterDefinition(
                "oldvalue",
                CommandParameterDefinition.TypeValue.String,
                "Old value for replace",
                "o");

            CommandOldValuePatternParameter = new CommandParameterDefinition(
                "oldvaluepattern",
                CommandParameterDefinition.TypeValue.String,
                "Old value for replace. Use regex pattern",
                "op");

            CommandNewValueParameter = new CommandParameterDefinition(
                "newvalue",
                CommandParameterDefinition.TypeValue.String,
                "New value for replace",
                "n");

            CommandPatternParameter = new CommandParameterDefinition(
                "pattern",
                CommandParameterDefinition.TypeValue.String,
                "Pattern for files (use more than one with ;). Default value: *.*",
                "a");

            CommandTimesParameter = new CommandParameterDefinition(
                "times",
                CommandParameterDefinition.TypeValue.Integer,
                "How many times the old value will be replaced. By default = -1, which means the old value will be replaced in the whole file",
                "t");


            CommandParametersDefinition.Add(CommandPathParameter);
            CommandParametersDefinition.Add(CommandOldValueParameter);
            CommandParametersDefinition.Add(CommandOldValuePatternParameter);
            CommandParametersDefinition.Add(CommandNewValueParameter);
            CommandParametersDefinition.Add(CommandPatternParameter);
            CommandParametersDefinition.Add(CommandTimesParameter);

            FileService = fileService ?? throw new ArgumentNullException(nameof(fileService));
        }
示例#16
0
        public OpenRepoCommand(
            IFileService directoryService,
            IPromptCommandService promptCommandService,
            IClipboardService clipboardService)
            : base(typeof(OpenRepoCommand).Namespace, nameof(OpenRepoCommand), HelpDefinition)
        {
            NameParameter = new CommandParameterDefinition(
                "name",
                CommandParameterDefinition.TypeValue.String,
                "Indicates the name or part of it for search and open this folder",
                "n");

            CommandParametersDefinition.Add(NameParameter);
            DirectoryService     = directoryService ?? throw new ArgumentNullException(nameof(directoryService));
            PromptCommandService = promptCommandService ?? throw new ArgumentNullException(nameof(promptCommandService));
            ClipboardService     = clipboardService ?? throw new ArgumentNullException(nameof(clipboardService));
        }
示例#17
0
        public UpdateParameterCommand(
            IStoredDataService storedDataService)
            : base(typeof(UpdateParameterCommand).Namespace, nameof(UpdateParameterCommand), HelpDefinition)
        {
            CommandKeyParameter = new CommandParameterDefinition("key",
                                                                 CommandParameterDefinition.TypeValue.String,
                                                                 "Key for the parameter. For replace with the value use [[key]]", "k");

            CommandValueParameter = new CommandParameterDefinition("value",
                                                                   CommandParameterDefinition.TypeValue.String,
                                                                   "Value which will be replaced when used the key", "v");

            RegisterCommandParameter(CommandKeyParameter);
            RegisterCommandParameter(CommandValueParameter);

            StoredDataService = storedDataService
                                ?? throw new ArgumentNullException(nameof(storedDataService));
        }
示例#18
0
        public AddAliasCommand(
            IStoredDataService storedDataService,
            List <CommandBase> registeredCommands)
            : base(typeof(AddAliasCommand).Namespace, nameof(AddAliasCommand), HelpDefinition)
        {
            CommandNameParameter = new CommandParameterDefinition("command",
                                                                  CommandParameterDefinition.TypeValue.String,
                                                                  "Command name for the alias", "c");

            CommandAliasParameter = new CommandParameterDefinition("alias",
                                                                   CommandParameterDefinition.TypeValue.String,
                                                                   "Alias for the command", "a");

            RegisterCommandParameter(CommandNameParameter);
            RegisterCommandParameter(CommandAliasParameter);

            StoredDataService = storedDataService
                                ?? throw new ArgumentNullException(nameof(storedDataService));
            RegisteredCommands = registeredCommands ?? throw new ArgumentNullException(nameof(registeredCommands));
        }
示例#19
0
        public MigrateCommand()
            : base(typeof(MigrateCommand).Namespace, nameof(MigrateCommand), HelpDefinition)
        {
            CommandStringConnectionFromMasterParameter = new CommandParameterDefinition("stringconnectionfrom",
                                                                                        CommandParameterDefinition.TypeValue.String,
                                                                                        "String connection for Dynamics for the master environment", "from");

            CommandStringConnectionFromSlaveParameter = new CommandParameterDefinition("stringconnectionto",
                                                                                       CommandParameterDefinition.TypeValue.String,
                                                                                       "String connection for Dynamics for the slave environment where the data will be written", "to");

            CommandEntitiesParameter = new CommandParameterDefinition("entities",
                                                                      CommandParameterDefinition.TypeValue.String,
                                                                      "Entities for migrate splitted by ; (ie. contact;account). Include entity intersection for associate", "e");


            RegisterCommandParameter(CommandStringConnectionFromMasterParameter);
            RegisterCommandParameter(CommandStringConnectionFromSlaveParameter);
            RegisterCommandParameter(CommandEntitiesParameter);
        }
示例#20
0
        public CloneUsdConfigurationCommand()
            : base(typeof(CloneUsdConfigurationCommand).Namespace, nameof(CloneUsdConfigurationCommand), HelpDefinition)
        {
            CommandStringConnectionFromMasterParameter = new CommandParameterDefinition("stringconnectionfrom",
                                                                                        CommandParameterDefinition.TypeValue.String,
                                                                                        "String connection for Dynamics for the master environment", "from");

            CommandStringConnectionFromSlaveParameter = new CommandParameterDefinition("stringconnectionto",
                                                                                       CommandParameterDefinition.TypeValue.String,
                                                                                       "String connection for Dynamics for the slave environment where the data will be written", "to");

            CommandIncludeOptionsParameter = new CommandParameterDefinition("options",
                                                                            CommandParameterDefinition.TypeValue.Boolean,
                                                                            "Include in the migration the 'Options' entity. Default value = false", "o");


            RegisterCommandParameter(CommandStringConnectionFromMasterParameter);
            RegisterCommandParameter(CommandStringConnectionFromSlaveParameter);
            RegisterCommandParameter(CommandIncludeOptionsParameter);
        }
示例#21
0
        public TemplateCommand(
            IFileService directoryService,
            IStoredDataService storedDataService)
            : base(typeof(TemplateCommand).Namespace, nameof(TemplateCommand), HelpDefinition)
        {
            CommandPathParameter = new CommandParameterDefinition(
                "path",
                CommandParameterDefinition.TypeValue.String,
                "Path for clone with ddtemplate.json",
                "p");

            CommandNameParameter = new CommandParameterDefinition(
                "name",
                CommandParameterDefinition.TypeValue.String,
                "Name of the registered template",
                "n");

            DestinationPathParameter = new CommandParameterDefinition(
                "destinationpath",
                CommandParameterDefinition.TypeValue.String,
                "Destination path for place the cloned template",
                "d");

            ValuesParameter = new CommandParameterDefinition(
                "values",
                CommandParameterDefinition.TypeValue.String,
                "Values for replace in template. Use pairs like \"Key1=Value 1;Key2=Value 2;...\"",
                "v");

            FileService = directoryService
                          ?? throw new ArgumentNullException(nameof(directoryService));
            StoredDataService = storedDataService
                                ?? throw new ArgumentNullException(nameof(storedDataService));

            RegisterCommandParameter(CommandPathParameter);
            RegisterCommandParameter(CommandNameParameter);
            RegisterCommandParameter(DestinationPathParameter);
            RegisterCommandParameter(ValuesParameter);

            UserTemplateSetupReplaceStrings = new List <ReplacePairValue>();
        }
示例#22
0
        public DownloadAssemblyCommand(IFileService fileService)
            : base(typeof(DownloadAssemblyCommand).Namespace, nameof(DownloadAssemblyCommand), HelpDefinition)
        {
            CommandStringConnectionParameter = new CommandParameterDefinition("stringconnection",
                                                                              CommandParameterDefinition.TypeValue.String,
                                                                              "String connection for Dynamics", "s");

            CommandAssemblyIdParameter = new CommandParameterDefinition("id",
                                                                        CommandParameterDefinition.TypeValue.Guid,
                                                                        "Assembly id in CRM", "i");

            CommandAssemblyNameParameter = new CommandParameterDefinition("name",
                                                                          CommandParameterDefinition.TypeValue.String,
                                                                          "Assembly name in CRM", "n");

            RegisterCommandParameter(CommandAssemblyIdParameter);
            RegisterCommandParameter(CommandStringConnectionParameter);
            RegisterCommandParameter(CommandAssemblyNameParameter);

            FileService = fileService ?? throw new ArgumentNullException(nameof(fileService));
        }
示例#23
0
        public ImportWebResourceCommand(IFileService fileService)
            : base(typeof(ImportWebResourceCommand).Namespace, nameof(ImportWebResourceCommand), HelpDefinition)
        {
            CommandPathParameter = new CommandParameterDefinition("path",
                                                                  CommandParameterDefinition.TypeValue.String,
                                                                  "Path with the resource", "p");

            CommandStringConnectionParameter = new CommandParameterDefinition("stringconnection",
                                                                              CommandParameterDefinition.TypeValue.String,
                                                                              "String connection for Dynamics", "s");

            CommandResourceName = new CommandParameterDefinition("resource",
                                                                 CommandParameterDefinition.TypeValue.String,
                                                                 "Resource name in CRM", "r");

            RegisterCommandParameter(CommandPathParameter);
            RegisterCommandParameter(CommandStringConnectionParameter);
            RegisterCommandParameter(CommandResourceName);

            FileService = fileService ?? throw new ArgumentNullException(nameof(fileService));
        }
示例#24
0
        public UnzipCommand(
            IFileService fileService)
            : base(typeof(UnzipCommand).Namespace, nameof(UnzipCommand), HelpDefinition)
        {
            CommandPathParameter = new CommandParameterDefinition(
                "path",
                CommandParameterDefinition.TypeValue.String,
                "Indicates the path (file) for unzip",
                "p");

            CommandDestinationParameter = new CommandParameterDefinition(
                "destination",
                CommandParameterDefinition.TypeValue.String,
                "Indicates the destination folder",
                "d");

            CommandParametersDefinition.Add(CommandPathParameter);
            CommandParametersDefinition.Add(CommandDestinationParameter);

            FileService = fileService ?? throw new ArgumentNullException(nameof(fileService));
        }
示例#25
0
        public RenameFolderCommand(
            IFileService fileService)
            : base(typeof(RenameFolderCommand).Namespace, nameof(RenameFolderCommand), HelpDefinition)
        {
            CommandPathOldFolderParameter = new CommandParameterDefinition(
                "oldpath",
                CommandParameterDefinition.TypeValue.String,
                "Source path for rename",
                "o");

            CommandPathNewFolderParameter = new CommandParameterDefinition(
                "newpath",
                CommandParameterDefinition.TypeValue.String,
                "New name of the folder",
                "n");

            CommandParametersDefinition.Add(CommandPathOldFolderParameter);
            CommandParametersDefinition.Add(CommandPathNewFolderParameter);

            FileService = fileService ?? throw new ArgumentNullException(nameof(fileService));
        }
示例#26
0
        public WindowsCmdCommand(IPromptCommandService promptCommandService)
            : base(typeof(WindowsCmdCommand).Namespace, nameof(WindowsCmdCommand), HelpDefinition)
        {
            CommandCmdParameter = new CommandParameterDefinition("command",
                                                                 CommandParameterDefinition.TypeValue.String,
                                                                 "Command name for the alias", "c");

            CommandWorkingDirectoryParameter = new CommandParameterDefinition("workingdirectory",
                                                                              CommandParameterDefinition.TypeValue.String,
                                                                              "Working directory", "w");

            CommandFilenameParameter = new CommandParameterDefinition("filename",
                                                                      CommandParameterDefinition.TypeValue.String,
                                                                      "File name", "f");

            RegisterCommandParameter(CommandCmdParameter);
            RegisterCommandParameter(CommandWorkingDirectoryParameter);
            RegisterCommandParameter(CommandFilenameParameter);

            PromptCommandService = promptCommandService
                                   ?? throw new ArgumentNullException(nameof(promptCommandService));
        }
示例#27
0
        public ImportSolutionCommand(IFileService fileService)
            : base(typeof(ImportSolutionCommand).Namespace, nameof(ImportSolutionCommand), HelpDefinition)
        {
            CommandPathParameter = new CommandParameterDefinition("path",
                                                                  CommandParameterDefinition.TypeValue.String,
                                                                  "Path with the zip solution", "p");

            CommandStringConnectionParameter = new CommandParameterDefinition("stringconnection",
                                                                              CommandParameterDefinition.TypeValue.String,
                                                                              "String connection for Dynamics", "s");

            CommandOverwriteUnmanagedCustomizationsParameter = new CommandParameterDefinition("overwriteunmanagedcustomizations",
                                                                                              CommandParameterDefinition.TypeValue.Boolean,
                                                                                              "Overwrite unmanaged customizations", "ov");

            CommandMigrateAsHoldParameter = new CommandParameterDefinition("migrateashold",
                                                                           CommandParameterDefinition.TypeValue.Boolean,
                                                                           "Migrate solution as hold", "mh");

            CommandPublishWorkflowsParameter = new CommandParameterDefinition("publishworkflows",
                                                                              CommandParameterDefinition.TypeValue.Boolean,
                                                                              "Publish workflows", "pw");

            ImportAsyncParameter = new CommandParameterDefinition("async",
                                                                  CommandParameterDefinition.TypeValue.Boolean,
                                                                  "Import solution async", "a");



            RegisterCommandParameter(CommandPathParameter);
            RegisterCommandParameter(CommandStringConnectionParameter);
            RegisterCommandParameter(CommandOverwriteUnmanagedCustomizationsParameter);
            RegisterCommandParameter(CommandMigrateAsHoldParameter);
            RegisterCommandParameter(CommandPublishWorkflowsParameter);
            RegisterCommandParameter(ImportAsyncParameter);

            FileService = fileService ?? throw new ArgumentNullException(nameof(fileService));
        }
示例#28
0
 private static string GetInvalidCastExceptionMessage(CommandBase command, CommandParameterDefinition item, string rawString, string typeString)
 {
     return($"'{rawString}' cannot be converted to {typeString} for command {command.CommandName} and parameter ${item.Name}");
 }
示例#29
0
        private static InputParameter GetImputParameterFromRequest(InputRequest inputRequest, CommandParameterDefinition parameter)
        {
            var inputByName = inputRequest
                              .InputParameters
                              .FirstOrDefault(k => k.ParameterName == parameter.Name && !k.IsShortCut);

            if (inputByName != null)
            {
                return(inputByName);
            }
            var inputByShortCut = inputRequest
                                  .InputParameters
                                  .FirstOrDefault(k => k.ParameterName == parameter.ShortCut && k.IsShortCut);

            return(inputByShortCut);
        }
示例#30
0
        private static CommandParameter GetParsedCommandParameter(CommandBase command, CommandParameterDefinition item, InputParameter itemInput)
        {
            var parameterName = item.Name;
            CommandParameter commandParameter = null;
            var rawString = itemInput.RawStringValue;

            if (item.Type == CommandParameterDefinition.TypeValue.String)
            {
                commandParameter = new CommandParameter(parameterName, rawString);
            }
            else if (item.Type == CommandParameterDefinition.TypeValue.Boolean)
            {
                if (!itemInput.HasValue)
                {
                    commandParameter = new CommandParameter(parameterName, true);
                }
                else
                {
                    bool boolValue = StrToBool(rawString);
                    commandParameter = new CommandParameter(parameterName, boolValue);
                }
            }
            else if (item.Type == CommandParameterDefinition.TypeValue.Decimal)
            {
                if (!decimal.TryParse(rawString, out decimal d))
                {
                    throw new InvalidCastException(GetInvalidCastExceptionMessage(command, item, rawString, "decimal"));
                }
                commandParameter = new CommandParameter(parameterName, d);
            }
            else if (item.Type == CommandParameterDefinition.TypeValue.Integer)
            {
                if (!int.TryParse(rawString, out int d))
                {
                    throw new InvalidCastException(GetInvalidCastExceptionMessage(command, item, rawString, "integer"));
                }
                commandParameter = new CommandParameter(parameterName, d);
            }
            else if (item.Type == CommandParameterDefinition.TypeValue.Guid)
            {
                if (!Guid.TryParse(rawString, out Guid d))
                {
                    throw new InvalidCastException(GetInvalidCastExceptionMessage(command, item, rawString, "guid"));
                }
                commandParameter = new CommandParameter(parameterName, d);
            }
            return(commandParameter);
        }