public void Validate(IArgsCommandSettings commandSettings, Command command)
 {
     if (commandSettings.Options.HasPositionalOption())
     {
         throw new SubcommandConflictsWithPositionalOptionException();
     }
 }
Exemple #2
0
 public void Validate(IArgsCommandSettings commandSettings, Option commandOption)
 {
     if (!_valueConverterFactory.IsSupportedBaseType(commandOption.Type))
     {
         throw new UnsupportedCommandOptionPropertyTypeException(commandOption.Type);
     }
 }
 public void Validate(IArgsCommandSettings commandSettings, Command command)
 {
     foreach (var validator in Validators)
     {
         validator.Validate(commandSettings, command);
     }
 }
Exemple #4
0
 public void Validate(IArgsCommandSettings commandSettings, Option commandOption)
 {
     foreach (var validator in Validators)
     {
         validator.Validate(commandSettings, commandOption);
     }
 }
 public void Validate(IArgsCommandSettings commandSettings, Command command)
 {
     if (commandSettings.Subcommands.Any(x => string.Equals(x.Name,
                                                            command.Name, _argsMapperSettings.StringComparison)))
     {
         throw new SubcommandNameAlreadyExistsException(command.Name);
     }
 }
Exemple #6
0
 public void Validate(IArgsCommandSettings commandSettings, Option commandOption)
 {
     if (commandSettings.Options.Any(x => string.Equals(x.LongName,
                                                        commandOption.LongName, _argsMapperSettings.StringComparison)))
     {
         throw new CommandOptionLongNameAlreadyExistsException(commandOption.LongName);
     }
 }
Exemple #7
0
        public void Validate(IArgsCommandSettings commandSettings, Command command)
        {
            if (string.IsNullOrEmpty(command.Name) || string.IsNullOrWhiteSpace(command.Name))
            {
                throw new SubcommandNameRequiredException(command.PropertyInfo);
            }

            if (!command.HasValidName())
            {
                throw new InvalidSubcommandNameException(command.Name);
            }
        }
        public void Validate(IArgsCommandSettings commandSettings, Option commandOption)
        {
            if (!commandOption.HasShortName)
            {
                return;
            }

            if (commandSettings.Options.Where(x => x.HasShortName).Any(x => x.ShortName == commandOption.ShortName))
            {
                // ReSharper disable once PossibleInvalidOperationException
                throw new CommandOptionShortNameAlreadyExistsException(commandOption.ShortName.Value);
            }
        }
Exemple #9
0
        public void Validate(IArgsCommandSettings commandSettings, Option commandOption)
        {
            // ReSharper disable once InvertIf
            if (commandOption.HasShortName)
            {
                // ReSharper disable once PossibleInvalidOperationException
                if (!char.IsLetter(commandOption.ShortName.Value))
                {
                    throw new InvalidCommandOptionShortNameException(commandOption.ShortName.Value);
                }

                if (Constants.ReservedOptionShortNames.Contains(commandOption.ShortName.Value))
                {
                    throw new ReservedCommandOptionShortNameException(commandOption.ShortName.Value);
                }
            }
        }
Exemple #10
0
        public void Validate(IArgsCommandSettings commandSettings, Option commandOption)
        {
            if (string.IsNullOrEmpty(commandOption.LongName) || string.IsNullOrWhiteSpace(commandOption.LongName))
            {
                throw new CommandOptionLongNameRequiredException(commandOption.PropertyInfo.Name);
            }

            if (!commandOption.HasValidLongName())
            {
                throw new InvalidCommandOptionLongNameException(commandOption.LongName);
            }

            if (Constants.ReservedOptionLongNames.Contains(commandOption.LongName))
            {
                throw new ReservedCommandOptionLongNameException(commandOption.LongName);
            }
        }
        public void Validate(IArgsCommandSettings commandSettings, Option commandOption)
        {
            // ReSharper disable once InvertIf
            if (commandOption.IsPositionalOption)
            {
                if (commandSettings.Options.Any(x => x.IsPositionalOption && x.Type.IsList()))
                {
                    throw new CommandPositionalOptionListConflictException();
                }

                // ReSharper disable once InvertIf
                if (commandOption.Type.IsList())
                {
                    if (commandSettings.Options.Any(x => x.IsPositionalOption))
                    {
                        throw new CommandPositionalOptionListConflictException();
                    }
                }
            }
        }