1 package eu.svjatoslav.inspector.java.commandline;
3 import eu.svjatoslav.commons.cli_helper.parameter_parser.Parameter;
4 import eu.svjatoslav.commons.string.String2;
5 import eu.svjatoslav.inspector.java.structure.TargetImageType;
7 import java.util.Arrays;
9 import static eu.svjatoslav.commons.cli_helper.parameter_parser.ArgumentCount.SINGLE;
11 public class TargetImageTypeParameter extends Parameter<TargetImageType, TargetImageTypeParameter> {
13 public TargetImageTypeParameter(){
14 super("Target image type. Default is: svg.", SINGLE);
18 public String describeFormat() {
19 String2 result = new String2("");
21 Arrays.stream(TargetImageType.values())
22 .forEach(targetImageType -> result.appendWithSeparator(", ", targetImageType.fileExtension));
24 result.prepend("options: ");
26 return result.toString();
30 public TargetImageType getValue() {
31 return TargetImageType.valueOf(arguments.get(0).toUpperCase());
35 public boolean validate(String value) {
37 TargetImageType.valueOf(value.toUpperCase());
38 } catch (final IllegalArgumentException exception) {