diff --git a/cloud-core/src/main/java/com/intellectualsites/commands/components/standard/BooleanComponent.java b/cloud-core/src/main/java/com/intellectualsites/commands/components/standard/BooleanComponent.java index ddb5a0fc..9722d7dd 100644 --- a/cloud-core/src/main/java/com/intellectualsites/commands/components/standard/BooleanComponent.java +++ b/cloud-core/src/main/java/com/intellectualsites/commands/components/standard/BooleanComponent.java @@ -94,6 +94,7 @@ public final class BooleanComponent extends CommandComp return BooleanComponent.newBuilder(name).asOptionalWithDefault(defaultNum).build(); } + public static final class Builder extends CommandComponent.Builder { private boolean liberal = false; @@ -136,6 +137,7 @@ public final class BooleanComponent extends CommandComp return liberal; } + private static final class BooleanParser implements ComponentParser { private static final List LIBERAL = Arrays.asList("TRUE", "YES", "ON", "FALSE", "NO", "OFF"); @@ -195,8 +197,13 @@ public final class BooleanComponent extends CommandComp } } + + /** + * Boolean parse exception + */ public static final class BooleanParseException extends IllegalArgumentException { + private final String input; private final boolean liberal; /** @@ -206,10 +213,19 @@ public final class BooleanComponent extends CommandComp * @param liberal Liberal value */ public BooleanParseException(@Nonnull final String input, final boolean liberal) { - super(input); + this.input = input; this.liberal = liberal; } + /** + * Get the supplied input + * + * @return String value + */ + public String getInput() { + return input; + } + /** * Get the liberal boolean value * diff --git a/cloud-core/src/main/java/com/intellectualsites/commands/components/standard/CharComponent.java b/cloud-core/src/main/java/com/intellectualsites/commands/components/standard/CharComponent.java index 4a1b14ea..20b3c6f8 100644 --- a/cloud-core/src/main/java/com/intellectualsites/commands/components/standard/CharComponent.java +++ b/cloud-core/src/main/java/com/intellectualsites/commands/components/standard/CharComponent.java @@ -90,6 +90,7 @@ public final class CharComponent extends CommandCompone return CharComponent.newBuilder(name).asOptionalWithDefault(defaultNum).build(); } + public static final class Builder extends CommandComponent.Builder { protected Builder(@Nonnull final String name) { @@ -130,6 +131,9 @@ public final class CharComponent extends CommandCompone } + /** + * Char parse exception + */ public static final class CharParseException extends IllegalArgumentException { private final String input; diff --git a/cloud-core/src/main/java/com/intellectualsites/commands/components/standard/StringComponent.java b/cloud-core/src/main/java/com/intellectualsites/commands/components/standard/StringComponent.java index eadb422e..aeba98d0 100644 --- a/cloud-core/src/main/java/com/intellectualsites/commands/components/standard/StringComponent.java +++ b/cloud-core/src/main/java/com/intellectualsites/commands/components/standard/StringComponent.java @@ -93,6 +93,7 @@ public final class StringComponent extends CommandCompo return StringComponent.newBuilder(name).asOptionalWithDefault(defaultNum).build(); } + public static final class Builder extends CommandComponent.Builder { private boolean greedy = false; @@ -135,6 +136,7 @@ public final class StringComponent extends CommandCompo return greedy; } + private static final class StringParser implements ComponentParser { private final boolean greedy;