Package org.apache.commons.cli
Class OptionValidator
java.lang.Object
org.apache.commons.cli.OptionValidator
Validates an Option string.
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) static final char[]
The array of additional characters allowed in the rest of the option but not in the first position(package private) static final char[]
The array of additional characters allowed as the first character in the option but not in the rest of the option -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static boolean
isValidChar
(char c) Returns whether the specified character is a valid character.private static boolean
isValidOpt
(char c) Returns whether the specified character is a valid Option.private static boolean
search
(char[] chars, char c) Checks the char array for a matching char.(package private) static String
Validates whetheropt
is a permissible Option shortOpt.
-
Field Details
-
ADDITIONAL_OPTION_CHARS
static final char[] ADDITIONAL_OPTION_CHARSThe array of additional characters allowed as the first character in the option but not in the rest of the option -
ADDITIONAL_LONG_CHARS
static final char[] ADDITIONAL_LONG_CHARSThe array of additional characters allowed in the rest of the option but not in the first position
-
-
Constructor Details
-
OptionValidator
OptionValidator()
-
-
Method Details
-
isValidChar
private static boolean isValidChar(char c) Returns whether the specified character is a valid character. A character is valid if any of the following conditions are true:- it is a letter
- it is a currency symbol (such as '$')
- it is a connecting punctuation character (such as '_')
- it is a digit
- it is a numeric letter (such as a Roman numeral character)
- it is a combining mark
- it is a non-spacing mark
- isIdentifierIgnorable returns true for the character
- it is a hyphen/dash ('-')
- Parameters:
c
- the character to validate- Returns:
- true if
c
is a valid character letter.
-
isValidOpt
private static boolean isValidOpt(char c) Returns whether the specified character is a valid Option. A character is valid if any of the following conditions are true:- it is a letter
- it is a currency symbol (such as '$')
- it is a connecting punctuation character (such as '_')
- it is a digit
- it is a numeric letter (such as a Roman numeral character)
- it is a combining mark
- it is a non-spacing mark
- isIdentifierIgnorable returns true for the character
- it is a question mark or 'at' sign ('?' or '@')
- Parameters:
c
- the option to validate- Returns:
- true if
c
is a letter, '?' or '@', otherwise false.
-
search
private static boolean search(char[] chars, char c) Checks the char array for a matching char.- Parameters:
chars
- the char array to searchc
- the char to look for.- Returns:
true
ifc
was inary
,false
otherwise.
-
validate
Validates whetheropt
is a permissible Option shortOpt. The rules that specify if theopt
is valid are:- a single character
opt
that is either Chars.SP(special case), '?', '@' or a letter - a multi character
opt
that only contains valid characters
A character is valid if any of the following conditions are true:
- it is a letter
- it is a currency symbol (such as '$')
- it is a connecting punctuation character (such as '_')
- it is a digit
- it is a numeric letter (such as a Roman numeral character)
- it is a combining mark
- it is a non-spacing mark
- isIdentifierIgnorable returns true for the character
- it is a hyphen/dash ('-')
In case
opt
isnull
no further validation is performed.- Parameters:
option
- The option string to validate, may be null- Throws:
IllegalArgumentException
- if the Option is not valid.
- a single character
-