protected void printFQNWithOptions(CommandDescriptor<?> command, Appendable stream) throws IOException { CommandDescriptor<?> owner = command.getOwner(); if (owner != null) { printFQNWithOptions(owner, stream); stream.append(' '); } stream.append(command.getName()); for (OptionDescriptor option : command.getOptions()) { stream.append(' '); option.printUsage(stream); } }
protected boolean printOptions(boolean printed, CommandDescriptor<?> command, Appendable stream) throws IOException { CommandDescriptor<?> owner = command.getOwner(); if (owner != null) { printed = printOptions(printed, owner, stream); } for (OptionDescriptor option : command.getOptions()) { printed = printParameter(printed, option, stream); } return printed; }
private List<String[]> collectParametersTuples(CommandDescriptor<?> command) throws IOException { CommandDescriptor<?> owner = command.getOwner(); List<String[]> tuples; Collection<? extends ParameterDescriptor> parameters; if (owner != null) { tuples = collectParametersTuples(owner); parameters = command.getOptions(); } else { tuples = new ArrayList<String[]>(); parameters = command.getParameters(); } for (ParameterDescriptor parameter : parameters) { StringBuilder sb = new StringBuilder(); parameter.printUsage(sb); String usage = sb.toString(); tuples.add(new String[]{usage, parameter.getUsage()}); } return tuples; }
public void testOptionWithUpperCase() throws IntrospectionException { class A { @Option(names = "I") private int i; } CommandDescriptor<Instance<A>> ai = CommandFactory.DEFAULT.create(A.class); assertEquals(1,ai.getOptions().size()); OptionDescriptor i = ai.getOption("-I"); assertEquals(Arrays.asList("I"),i.getNames()); }
public void testCommandDescription() throws IntrospectionException { class A { } CommandDescriptor<Instance<A>> c = CommandFactory.DEFAULT.create(A.class); assertEquals("", c.getUsage()); assertEquals(0, c.getArguments().size()); assertEquals(0, c.getOptions().size()); }
public void testOption() throws IntrospectionException { class A { @Option(names = "i") private int i; } CommandDescriptor<Instance<A>> ai = CommandFactory.DEFAULT.create(A.class); assertEquals(1,ai.getOptions().size()); OptionDescriptor i = ai.getOption("-i"); assertEquals(Arrays.asList("i"),i.getNames()); }
public void testCommandImplicitDescription() throws IntrospectionException { class A { } CommandDescriptor<Instance<A>> c = CommandFactory.DEFAULT.create(A.class); assertEquals("", c.getUsage()); assertEquals(0, c.getArguments().size()); assertEquals(0, c.getOptions().size()); }
public void testAnnotation() throws IntrospectionException { class A { @Level String l; } CommandDescriptor<Instance<A>> a = CommandFactory.DEFAULT.create(A.class); assertEquals(1,a.getOptions().size()); OptionDescriptor i = a.getOption("-l"); assertEquals(Arrays.asList("l"),i.getNames()); assertTrue(i.getAnnotation() instanceof Level); } }
protected void printFQNWithOptions(CommandDescriptor<?> command, Appendable stream) throws IOException { CommandDescriptor<?> owner = command.getOwner(); if (owner != null) { printFQNWithOptions(owner, stream); stream.append(' '); } stream.append(command.getName()); for (OptionDescriptor option : command.getOptions()) { stream.append(' '); option.printUsage(stream); } }
protected boolean printOptions(boolean printed, CommandDescriptor<?> command, Appendable stream) throws IOException { CommandDescriptor<?> owner = command.getOwner(); if (owner != null) { printed = printOptions(printed, owner, stream); } for (OptionDescriptor option : command.getOptions()) { printed = printParameter(printed, option, stream); } return printed; }
private List<String[]> collectParametersTuples(CommandDescriptor<?> command) throws IOException { CommandDescriptor<?> owner = command.getOwner(); List<String[]> tuples; Collection<? extends ParameterDescriptor> parameters; if (owner != null) { tuples = collectParametersTuples(owner); parameters = command.getOptions(); } else { tuples = new ArrayList<String[]>(); parameters = command.getParameters(); } for (ParameterDescriptor parameter : parameters) { StringBuilder sb = new StringBuilder(); parameter.printUsage(sb); String usage = sb.toString(); tuples.add(new String[]{usage, parameter.getUsage()}); } return tuples; }
} else { writer.append("usage: ").append(getName()); for (OptionDescriptor option : getOptions()) { option.printUsage(writer); for (OptionDescriptor option : owner.getOptions()) { writer.append(" "); StringBuilder sb = new StringBuilder();
for (OptionDescriptor option : getOptions()) { writer.append(" "); option.printUsage(writer); if (getOptions().size() > 0) { writer.append("PARAMETERS\n"); for (OptionDescriptor option : getOptions()) { writer.append(Util.MAN_TAB); option.printUsage(writer); for (OptionDescriptor option : owner.getOptions()) { writer.append(" "); option.printUsage(writer); writer.append(" ").append(getName()); for (OptionDescriptor option : getOptions()) { writer.append(" "); option.printUsage(writer); options.addAll(owner.getOptions()); options.addAll(getOptions()); if (options.size() > 0) { writer.append("\nPARAMETERS\n"); for (ParameterDescriptor parameter : Util.join(owner.getOptions(), getParameters())) { writer.append(Util.MAN_TAB); parameter.printUsage(writer);