private static Options createHelpOptions() { final Options options = new Options(); options.addOption(Option.builder(HELP_KEY).longOpt("help") .desc("print this message").build()); return options; }
@Override public Options getOptions() { return new Options().addOption(Option.builder(REPLICATION) .required(false) .hasArg(true) .desc("number of replicas to have for each block of the loaded file") .build()); }
/** * Create command line option with only long name and only one argument. * * @param longOpt long version of option * @param argName name of argument for help message * @param desc description of option */ private Option createSingleArgOpt(String longOpt, String argName, String desc) { return Option.builder().longOpt(longOpt).hasArg().argName(argName).desc(desc).build(); }
private Options getOptions() { Options options = new Options(); Option help = Option.builder("h") .longOpt("help") .desc("Prints this help message") .build(); options.addOption(help); buildOptionsGroup(options); Option t = Option.builder("t") .required() .hasArg() .argName("file") .build(); Option w = Option.builder("w") .required() .hasArg() .argName("word") .build(); Option o = Option.builder("o") .hasArg() .argName("directory") .build(); options.addOption(t); options.addOption(w); options.addOption(o); return options; }
private Options inferOptionsFromMethods() { Options options = new Options(); for (Method method : klazz.getMethods()) { if (canUseMethod(method)) { CliObjectOption annotation = method.isAnnotationPresent(CliObjectOption.class) ? method.getAnnotation(CliObjectOption.class) : null; String optionName = annotation == null || Strings.isNullOrEmpty(annotation.name()) ? method.getName() : annotation.name(); String description = annotation == null ? "" : annotation.description(); Option.Builder builder = Option.builder(optionName).desc(description); boolean hasArg = method.getParameterTypes().length > 0; if (hasArg) { builder.hasArg(); } Option option = builder.build(); options.addOption(option); this.methodsMap.put(option.getOpt(), method); } } return options; }
/** * Adds the deprecated command line options to the given options collection. * These are split out for purposes of not including them in the help * message. We need to add the deprecated options so as not to break * existing scripts. * * @param options a collection of command line arguments */ @SuppressWarnings({"static-access", "deprecation"}) private void addDeprecatedOptions(final Options options) { final Option proxyServer = Option.builder().argName("url").hasArg().longOpt(ARGUMENT.PROXY_URL) .desc("The proxy url argument is deprecated, use proxyserver instead.") .build(); final Option appName = Option.builder(ARGUMENT.APP_NAME_SHORT).argName("name").hasArg().longOpt(ARGUMENT.APP_NAME) .desc("The name of the project being scanned.") .build(); options.addOption(Option.builder().longOpt("disableNSP") .desc("Disable the NSP Package Analyzer.").build()); options.addOption(proxyServer); options.addOption(appName); }
.hasArg() .argName("SECS") .desc("How long in between reported metrics. Will be rounded up to the next 10 sec boundary.\n" + "default " + DEFAULT_REPORT_INTERVAL) .build()); .hasArg() .argName("SECS") .desc("How long of a rolling window should be in each report. Will be rounded up to the next report interval boundary.\n" + "default " + DEFAULT_WINDOW_INTERVAL) .build()); .hasArg() .argName("TYPE:PATH?OPTIONS") .desc("Provide the config for a reporter to run. Supported types are:\n" + "FIXED - a fixed width format that should be more human readable\n" + "LEGACY - (write things out in the legacy format)\n"
@Test public void testHelpWithLongOptSeparator() throws Exception { Options options = new Options(); options.addOption( "f", true, "the file" ); options.addOption(Option.builder("s").longOpt("size").desc("the size").hasArg().argName("SIZE").build()); options.addOption(Option.builder().longOpt("age").desc("the age").hasArg().build()); HelpFormatter formatter = new HelpFormatter(); assertEquals(HelpFormatter.DEFAULT_LONG_OPT_SEPARATOR, formatter.getLongOptSeparator()); formatter.setLongOptSeparator("="); assertEquals("=", formatter.getLongOptSeparator()); StringWriter out = new StringWriter(); formatter.printHelp(new PrintWriter(out), 80, "create", "header", options, 2, 2, "footer"); assertEquals( "usage: create" + EOL + "header" + EOL + " --age=<arg> the age" + EOL + " -f <arg> the file" + EOL + " -s,--size=<SIZE> the size" + EOL + "footer" + EOL, out.toString()); }
public Option createOption() { return Option.builder(shortName).longOpt(longName).desc(description).hasArg(hasArg).build(); }
/** * Create command line option with only long name and multiple arguments. * Multiple arguments can be separated by comma or by space. * * @param longOpt long version of option * @param argName name of argument for help message * @param desc description of option */ private Option createMultiArgOpt(String longOpt, String argName, String desc) { return Option.builder().longOpt(longOpt).hasArgs().argName(argName).valueSeparator(',').desc(desc).build(); }
private static Options createOptions() { final Options options = createHelpOptions(); options.addOption(Option.builder(PLAINTEXT_KEY).longOpt("plaintext").hasArg().required() .desc("Plaintext that needs to be encrypted") .argName("plainText").build()); options.addOption(Option.builder(PASSPHRASE_KEY).longOpt("key").hasArg().required() .desc("Passphrase used for encrypting plain text") .argName("pass phrase").build()); options.addOption(Option.builder(VERSION_KEY).longOpt("version").hasArg().required() .desc("Version it will use to encrypt Version: " + Version.versionStrings()) .argName("crypto version").build()); return options; } }
/** * Create command line option with only long name and no argument. * * @param longOpt long version of option * @param desc description of option */ private Option createNoArgOpt(String longOpt, String desc) { return Option.builder().longOpt(longOpt).desc(desc).build(); }
@Test public void testUsageWithLongOptSeparator() throws Exception { Options options = new Options(); options.addOption( "f", true, "the file" ); options.addOption(Option.builder("s").longOpt("size").desc("the size").hasArg().argName("SIZE").build()); options.addOption(Option.builder().longOpt("age").desc("the age").hasArg().build()); HelpFormatter formatter = new HelpFormatter(); formatter.setLongOptSeparator("="); StringWriter out = new StringWriter(); formatter.printUsage(new PrintWriter(out), 80, "create", options); assertEquals("usage: create [--age=<arg>] [-f <arg>] [-s <SIZE>]", out.toString().trim()); } }
private static Options initOptions(Options options) { options.addOption(new Option(StringUtils.EMPTY + HELP_OPTION, "print this message")); options.addOption(Option.builder(StringUtils.EMPTY + PLAIN_PWD_OPTION).argName("plain password").hasArg() .desc("plain password to be encrypted").build()); options.addOption(Option.builder(StringUtils.EMPTY + MASTER_PWD_OPTION).argName("master password").hasArg() .desc("master password used to encrypt the plain password").build()); options.addOption(Option.builder(StringUtils.EMPTY + MASTER_PWD_FILE_OPTION).argName("master password file") .hasArg().desc("file that contains the master password used to encrypt the plain password").build()); options.addOption(new Option(StringUtils.EMPTY + STRONG_ENCRYPTOR_OPTION, "use strong encryptor")); options.addOption(Option.builder(StringUtils.EMPTY + ENCRYPTED_PWD_OPTION).argName("decrypt the input").hasArg().build()); return options; }
/** * Create command line option with short name, long name, and only one argument. * * @param shortOpt short version of option * @param longOpt long version of option * @param argName name of argument for help message * @param desc description of option */ private Option createSingleArgOpt(String shortOpt, String longOpt, String argName, String desc) { return Option.builder(shortOpt).longOpt(longOpt).hasArg().argName(argName).desc(desc).build(); }
/** * Create command line option with short name, long name, and no argument. * * @param shortOpt short version of option * @param longOpt long version of option * @param desc description of option */ private Option createNoArgOpt(String shortOpt, String longOpt, String desc) { return Option.builder(shortOpt).longOpt(longOpt).desc(desc).build(); }
private Options buildExpectedOptions() { final Options options = new Options(); for (final Map.Entry<String, String> entry : OPTIONS_MAP.entrySet()) { final Option option = Option.builder(null).required(true).longOpt(entry.getKey()).desc(entry.getValue()).hasArg().build(); options.addOption(option); } return options; }
@Test(expected=IllegalArgumentException.class) public void testBuilderInsufficientParams2() { Option.builder(null).desc("desc").build(); }
@Test(expected=IllegalArgumentException.class) public void testBuilderInsufficientParams1() { Option.builder().desc("desc").build(); }
@Override public Options getOptions() { return new Options().addOption( Option.builder("f") .required(false) .hasArg() .desc("format") .build() ); }