List of usage examples for org.apache.commons.cli Option.Builder required
boolean required
To view the source code for org.apache.commons.cli Option.Builder required.
Click Source Link
From source file:de.vandermeer.skb.datatool.applications.options.AO_DataEntryType.java
/** * Returns the new option.//from ww w . j a v a2 s . c om * @param tlMap entry types supported by an application for long description * @throws NullPointerException - if description parameter is null * @throws IllegalArgumentException - if description parameter is empty */ public AO_DataEntryType(TypeLoaderMap tlMap) { super("specifies the type the tool should process", "###"); Option.Builder builder = Option.builder("e"); builder.longOpt("entry-type"); builder.required(true); builder.hasArg().argName("TYPE"); this.setCliOption(builder.build()); this.tlMap = tlMap; }
From source file:de.vandermeer.skb.datatool.applications.options.AO_KeySeparator.java
/** * Returns the new option./* www . j a v a 2 s . c o m*/ * @param defaultValue option default value * @param longDescription option long description * @throws NullPointerException - if description parameter is null * @throws IllegalArgumentException - if description parameter is empty */ public AO_KeySeparator(Character defaultValue, String longDescription) { super(defaultValue, "a character as separator between elements of a key", longDescription); Option.Builder builder = Option.builder(); builder.longOpt("key-sep"); builder.hasArg().argName("SEP"); builder.required(false); this.setCliOption(builder.build()); }
From source file:de.vandermeer.skb.datatool.applications.options.AO_DataTarget.java
/** * Returns the new option.//w w w . j a va 2 s.c om * @param required true if option is required, false of it is optional * @param tlMap entry types supported by an application for long description * @throws NullPointerException - if description parameter is null * @throws IllegalArgumentException - if description parameter is empty */ public AO_DataTarget(boolean required, TypeLoaderMap tlMap) { super("specifies a target for output generation and character conversion", "###"); Option.Builder builder = Option.builder("t"); builder.longOpt("target"); builder.hasArg().argName("TARGET"); builder.required(required); this.setCliOption(builder.build()); this.tlMap = tlMap; }
From source file:org.apache.batchee.cli.BatchEECLI.java
private static Options buildOptions(final Class<? extends Runnable> cmd, Map<String, Field> fields) { final Options options = new Options(); Class<?> it = cmd;/*from ww w.j a v a 2s . c om*/ while (it != null) { for (final Field f : it.getDeclaredFields()) { final org.apache.batchee.cli.command.api.Option option = f .getAnnotation(org.apache.batchee.cli.command.api.Option.class); final org.apache.batchee.cli.command.api.Arguments arguments = f .getAnnotation(org.apache.batchee.cli.command.api.Arguments.class); if (option != null && arguments != null) { throw new IllegalArgumentException("An @Option can't get @Arguments: " + f); } if (option != null) { final String name = option.name(); final Option.Builder builder = Option.builder(name).desc(option.description()).hasArg(); if (option.required()) { builder.required(); } options.addOption(builder.build()); fields.put(name, f); f.setAccessible(true); } else if (arguments != null) { if (fields.put("", f) != null) { throw new IllegalArgumentException("A command can only have a single @Arguments"); } f.setAccessible(true); } } it = it.getSuperclass(); } return options; }