f84b33404964a2ebc50e2834e5df4ead94e5f703
[cli-helper.git] / src / main / java / eu / svjatoslav / commons / cli_helper / parameter_parser / parameter / FloatOption.java
1 package eu.svjatoslav.commons.cli_helper.parameter_parser.parameter;
2
3 import eu.svjatoslav.commons.cli_helper.parameter_parser.Option;
4 import eu.svjatoslav.commons.cli_helper.parameter_parser.ParameterCount;
5
6 public class FloatOption extends Option<Float, FloatOption> {
7
8         public FloatOption(final String description) {
9             super(description, ParameterCount.ONE);
10         }
11
12         @Override
13         public java.lang.String describeFormat() {
14             return "Float.";
15         }
16
17         @Override
18         public Float getValue() {
19             if (parameters.size() != 1)
20                 throw new RuntimeException("Parameter " + description
21                         + " shall have exactly 1 argument.");
22             return Float.parseFloat(parameters.get(0));
23         }
24
25         @Override
26         public boolean isValid(final java.lang.String value) {
27             try {
28                 java.lang.Float.valueOf(value);
29                 return true;
30             } catch (final NumberFormatException e) {
31                 return false;
32             }
33         }
34 }
35