X-Git-Url: http://www2.svjatoslav.eu/gitweb/?p=cli-helper.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Fcommons%2Fcli_helper%2Fparameter_parser%2Fparameter%2FFloatOption.java;fp=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Fcommons%2Fcli_helper%2Fparameter_parser%2Fparameter%2FFloatOption.java;h=f84b33404964a2ebc50e2834e5df4ead94e5f703;hp=0000000000000000000000000000000000000000;hb=d0facd8b18c06f49b44fd62d541b9b76778158e0;hpb=e9fa422babe0972f5712c8a501a723c5081757b5 diff --git a/src/main/java/eu/svjatoslav/commons/cli_helper/parameter_parser/parameter/FloatOption.java b/src/main/java/eu/svjatoslav/commons/cli_helper/parameter_parser/parameter/FloatOption.java new file mode 100644 index 0000000..f84b334 --- /dev/null +++ b/src/main/java/eu/svjatoslav/commons/cli_helper/parameter_parser/parameter/FloatOption.java @@ -0,0 +1,35 @@ +package eu.svjatoslav.commons.cli_helper.parameter_parser.parameter; + +import eu.svjatoslav.commons.cli_helper.parameter_parser.Option; +import eu.svjatoslav.commons.cli_helper.parameter_parser.ParameterCount; + +public class FloatOption extends Option { + + public FloatOption(final String description) { + super(description, ParameterCount.ONE); + } + + @Override + public java.lang.String describeFormat() { + return "Float."; + } + + @Override + public Float getValue() { + if (parameters.size() != 1) + throw new RuntimeException("Parameter " + description + + " shall have exactly 1 argument."); + return Float.parseFloat(parameters.get(0)); + } + + @Override + public boolean isValid(final java.lang.String value) { + try { + java.lang.Float.valueOf(value); + return true; + } catch (final NumberFormatException e) { + return false; + } + } +} +