summaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorCedric Beust <cedric@beust.com>2012-11-10 10:29:37 -0800
committerCedric Beust <cedric@beust.com>2012-11-10 10:29:37 -0800
commitd5490aabc6002f9400e5cf3050f098ab967253d2 (patch)
tree01c39b7ee81626b3f4f3cbe8e7107f43124455c8 /src/main
parent2e7ae2b785a7d246ffaccaa1f57a06a7c8f6626a (diff)
downloadjcommander-d5490aabc6002f9400e5cf3050f098ab967253d2.tar.gz
Fixed: GITHUB-107: Allow enum values without converting them to uppercase.
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/com/beust/jcommander/JCommander.java5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/main/java/com/beust/jcommander/JCommander.java b/src/main/java/com/beust/jcommander/JCommander.java
index efde39e..4f2929e 100644
--- a/src/main/java/com/beust/jcommander/JCommander.java
+++ b/src/main/java/com/beust/jcommander/JCommander.java
@@ -1263,7 +1263,10 @@ public class JCommander {
String optionName = names.length > 0 ? names[0] : "[Main class]";
if (converterClass != null && converterClass.isEnum()) {
try {
- result = Enum.valueOf((Class<? extends Enum>) converterClass, value.toUpperCase());
+ result = Enum.valueOf((Class<? extends Enum>) converterClass, value);
+ if (result == null) {
+ result = Enum.valueOf((Class<? extends Enum>) converterClass, value.toUpperCase());
+ }
} catch (Exception e) {
throw new ParameterException("Invalid value for " + optionName + " parameter. Allowed values:" +
EnumSet.allOf((Class<? extends Enum>) converterClass));