@CommandDefinition(name = "test", description = "testing multiple values") public class Parser4Test<CI extends CommandInvocation> extends TestingCommand<CI> { @OptionList(shortName = 'o', name="option", valueSeparator = ',') private List<String> option; @OptionList private List<Integer> bar; @OptionList(shortName = 'h', valueSeparator = ':') private List<String> help; @OptionList(shortName = 'e', valueSeparator = ' ') private List<String> help2; @Arguments private List<String> arguments; }
@CommandDefinition(name = "test", description = "a simple test") public class TestPopulator2<CI extends CommandInvocation> implements Command<CI> { @OptionList(shortName = 'b') private Set<String> basicSet; @OptionList(shortName = 'a') private List<Integer> basicList; @OptionList(shortName = 'i') private ArrayList<Short> implList;
@CommandDefinition(name = "test", description = "testing multiple values") public class Parser5Test<CI extends CommandInvocation> extends TestingCommand<CI> { @OptionList(shortName = 'f', name="foo", valueSeparator=' ') private List<String> foo; @Option(shortName = 'b', name="bar", hasValue = false) private Boolean bar; @Option(shortName = 'z', name="baz", hasValue = false) private Boolean baz; @OptionList(shortName = 'q', name="qux", valueSeparator=' ') private List<String> qux; @Arguments private List<String> arguments; }
private Long veryLong; @OptionList private Set<String> basicSet; private Currency currency; @OptionList(validator = LongOptionValidator.class, valueSeparator = ';') private List<Long> longs; @OptionList(name = "strings") private List<String> strings;
private String less; @OptionList(defaultValue = "/tmp", description = "file location", valueSeparator = ':', validator = DirectoryValidator.class, activator = BarActivator.class)
@CommandDefinition(name = "test", description = "a simple test3") public class ParseCompleteTest5<CI extends CommandInvocation> extends TestCommand<CI> { @Option(shortName = 'X', description = "enable X") private String X; @OptionList(shortName = 'v', name = "value", valueSeparator = ':') private List<String> values; @Option(shortName = 'b', hasValue = false) private boolean bool; @Option(shortName = 'D', description = "define properties", required = true) private String define; @Argument(completer = ArgTestCompleter.class) private String arg; }
@CommandDefinition(name = "test", description = "a simple test3") public class ParseCompleteTest3<CI extends CommandInvocation> extends TestCommand<CI> { @Option(shortName = 'X', description = "enable X") private String X; @OptionList(shortName = 'v', name = "value", description = "enable equal", completer = ValueTestCompleter.class) private List<String> values; @Option(shortName = 'b', hasValue = false) private boolean bool; @Option(shortName = 'D', description = "define properties", required = true) private String define; @Argument(completer = ArgTestCompleter.class) private String arg; }
private Long veryLong; @OptionList private Set<String> basicSet;
@CommandDefinition(name="ls", description = "[OPTION]... [FILE]...") public class LsCommand implements Command { @Option(hasValue = false, description = "set foo to true/false") private Boolean foo; @Option(hasValue = false, description = "set the bar") private boolean bar; @Option(defaultValue = {"MORE"}, argument = "SIZE") private String less; @OptionList(defaultValue = "/tmp", description = "file location", valueSeparator = ':', validator = DirectoryValidator.class) List<File> files; @Option(hasValue = false, description = "display this help and exit") private boolean help; @Arguments private java.util.List<File> arguments; @Override public CommandResult execute(CommandInvocation commandInvocation) throws CommandException, InterruptedException { assertEquals(2, files.size()); return CommandResult.SUCCESS; } }