List of usage examples for org.apache.commons.cli OptionGroup setRequired
public void setRequired(boolean required)
From source file:com.falcon.orca.helpers.CommandHelper.java
public static Options createMasterOptions() { Option start = Option.builder("s").longOpt("start").build(); Option stop = Option.builder("st").longOpt("stop").build(); Option pause = Option.builder("p").longOpt("pause").build(); Option continueOpt = Option.builder("re").longOpt("resume").build(); Option exit = Option.builder("e").longOpt("exit").build(); Option clusterDetails = Option.builder("cd").longOpt("clusterDetails").build(); Option url = Option.builder("U").longOpt("url").hasArg(true).build(); Option durationMode = Option.builder("DM").longOpt("durationMode").hasArg(true).build(); Option duration = Option.builder("DU").longOpt("duration").hasArg(true).build(); Option repeats = Option.builder("R").longOpt("repeats").hasArg(true).build(); Option method = Option.builder("M").longOpt("method").hasArg(true).build(); Option header = Option.builder("H").longOpt("header").hasArg(true).build(); Option concurrency = Option.builder("C").longOpt("concurrency").hasArg(true).build(); Option templateFile = Option.builder("TF").longOpt("template").hasArg(true).build(); Option dataFile = Option.builder("DF").longOpt("dataFile").hasArg(true).build(); Option cookies = Option.builder("CO").longOpt("cookie").hasArg(true).build(); Option data = Option.builder("D").longOpt("data").hasArg(true).type(String.class).build(); OptionGroup optionGroup = new OptionGroup(); optionGroup.setRequired(true); optionGroup.addOption(start);//from w ww .j a va2 s .c o m optionGroup.addOption(stop); optionGroup.addOption(pause); optionGroup.addOption(continueOpt); optionGroup.addOption(clusterDetails); optionGroup.addOption(exit); Options options = new Options(); options.addOptionGroup(optionGroup); options.addOption(url); options.addOption(durationMode); options.addOption(duration); options.addOption(repeats); options.addOption(method); options.addOption(header); options.addOption(concurrency); options.addOption(cookies); options.addOption(data); options.addOption(templateFile); options.addOption(dataFile); return options; }
From source file:co.cask.cdap.cli.CLIMain.java
private static void addOptionalOption(Options options, Option option) { OptionGroup optionalGroup = new OptionGroup(); optionalGroup.setRequired(false); optionalGroup.addOption(option);//from w ww . j av a 2 s. c o m options.addOptionGroup(optionalGroup); }
From source file:edu.cmu.tetrad.cli.CausalCmdApplication.java
private static void populateMainOptions() { OptionGroup optGrp = new OptionGroup(); optGrp.addOption(new Option(null, ALGO_OPT, true, algorithmCmd())); optGrp.addOption(new Option(null, SIM_DATA_OPT, true, simulationCmd())); optGrp.setRequired(true); MAIN_OPTIONS.addOptionGroup(optGrp); MAIN_OPTIONS.addOption(null, VERSION_OPT, false, "Version."); }
From source file:com.sindicetech.siren.demo.loader.Loader.java
private static Options buildOptions() { Options options = new Options(); // input file name and help are exclusive OptionGroup fileHelpGroup = new OptionGroup(); fileHelpGroup.setRequired(true); fileHelpGroup//from w w w .j a v a 2s . c om .addOption(OptionBuilder.hasArgs(1).hasOptionalArgs(20).withArgName("file or/and folder name[s]") .withDescription("JSON file[s] or/and director(y|ies) with JSON files (max 20)") .withLongOpt(INPUT_FILE_OPT_LONG).isRequired().create(INPUT_FILE_OPT)); fileHelpGroup.addOption(OptionBuilder.withDescription("prints help and exits").create(HELP_OPT)); options.addOptionGroup(fileHelpGroup); options.addOption(OptionBuilder.hasArgs(1).withArgName("Solr URL") .withDescription("Solr URL (default=" + DEFAULT_SOLR_URL + ")").withLongOpt(URL_OPT_LONG) .isRequired(false).create(URL_OPT)); // options.addOption(OptionBuilder // .hasArgs(1) // .withArgName("batch size") // .withDescription( // "number of documents sent to Solr in one request, max " + MAX_BATCH_SIZE + " (default=" // + DEFAULT_BATCH_SIZE + ")").withLongOpt(BATCH_OPT_LONG).isRequired(false) // .create(BATCH_OPT)); options.addOption(OptionBuilder .withDescription("load all files in directories, not only files with JSON file extension") .withLongOpt(NO_EXT_CHECK_OPT_LONG).isRequired(false).create(NO_EXT_CHECK_OPT)); options.addOption( OptionBuilder.withDescription("JSON file extension (default=" + DEFAULT_JSON_EXTENSION + ")") .withLongOpt(EXT_OPT_LONG).isRequired(false).create(EXT_OPT)); options.addOption(OptionBuilder.withDescription("commit after each file, (default=false)") .withLongOpt(COMMIT_EACH_LONG).isRequired(false).create(COMMIT_EACH_OPT)); return options; }
From source file:com.github.triceo.robozonky.app.CommandLineInterface.java
/** * Parse the command line./*www . ja v a 2s. c o m*/ * * @param args Command line arguments as received by {@link App#main(String...)}. * @return Empty if parsing failed, at which point it will write standard help message to sysout. */ public static Optional<CommandLineInterface> parse(final String... args) { // create the mode of operation final OptionGroup operatingModes = new OptionGroup(); operatingModes.setRequired(true); Stream.of(OperatingMode.values()).forEach(mode -> operatingModes.addOption(mode.getSelectingOption())); // find all options from all modes of operation final Collection<Option> ops = Stream.of(OperatingMode.values()).map(OperatingMode::getOtherOptions) .collect(LinkedHashSet::new, LinkedHashSet::addAll, LinkedHashSet::addAll); // include authentication options final OptionGroup authenticationModes = new OptionGroup(); authenticationModes.setRequired(true); authenticationModes.addOption(CommandLineInterface.OPTION_USERNAME); authenticationModes.addOption(CommandLineInterface.OPTION_KEYSTORE); ops.add(CommandLineInterface.OPTION_PASSWORD); ops.add(CommandLineInterface.OPTION_USE_TOKEN); ops.add(CommandLineInterface.OPTION_FAULT_TOLERANT); ops.add(CommandLineInterface.OPTION_CLOSED_SEASON); ops.add(CommandLineInterface.OPTION_ZONK); // join all in a single config final Options options = new Options(); options.addOptionGroup(operatingModes); options.addOptionGroup(authenticationModes); ops.forEach(options::addOption); final CommandLineParser parser = new DefaultParser(); // and parse try { final CommandLine cli = parser.parse(options, args); CommandLineInterface.logOptionValues(cli); return Optional.of(new CommandLineInterface(options, cli)); } catch (final ParseException ex) { CommandLineInterface.printHelp(options, ex.getMessage(), true); return Optional.empty(); } }
From source file:de.moritzrupp.stockreader.Main.java
/** * initOptions/* w w w . j av a 2 s. c o m*/ * <p>Initializes the options for the console application</p> */ @SuppressWarnings("static-access") private static void initOptions() { Option help = new Option("h", "help", false, "prints the help message"); Option version = new Option("v", "version", false, "prints version and license information and exists"); Option price = new Option("p", "price", false, "prints only the symbol, the date and the price of the stock"); Option csv = OptionBuilder.withArgName("FILE").withLongOpt("file") .withDescription("the path and file name to the exported file").hasArg().create("f"); Option host = OptionBuilder.withArgName("HOST").withLongOpt("host") .withDescription("the SMTP host for sending mails").hasArg().withValueSeparator('=').isRequired() .create(); Option password = OptionBuilder.withArgName("PASS").withLongOpt("password") .withDescription("the password of the mail user").hasArg().withValueSeparator('=').isRequired() .create(); Option user = OptionBuilder.withArgName("USERNAME").withLongOpt("user").withDescription("the mail user") .hasArg().withValueSeparator('=').isRequired().create(); Option from = OptionBuilder.withArgName("FROM").withLongOpt("from").withDescription("the FROM address") .hasArg().withValueSeparator('=').isRequired().create(); Option to = OptionBuilder.withArgName("TO").withLongOpt("to").withDescription("the TO address").hasArg() .withValueSeparator('=').isRequired().create(); OptionGroup mailGroup = new OptionGroup(); mailGroup.addOption(host); mailGroup.addOption(user); mailGroup.addOption(password); mailGroup.addOption(from); mailGroup.addOption(to); mailGroup.setRequired(true); options = new Options(); options.addOption(help); options.addOption(version); options.addOption(price); options.addOption(csv); options.addOptionGroup(mailGroup); formatter = new HelpFormatter(); header = "Pass the stock symbols as arguments and seperate them by spaces. At least one stock symbol is required.\n" + "Example: stockreader DBK.DE SAP.DE\n\n"; footer = "\nFor more information see http://www.moritzrupp.de."; }
From source file:at.favre.tools.dconvert.ui.CLIInterpreter.java
private static Options setupOptions(ResourceBundle bundle) { Options options = new Options(); Option srcOpt = Option.builder(SOURCE_ARG).required().argName("path to file or folder").hasArg(true) .desc(bundle.getString("arg.descr.cmd.src")).build(); Option srcScaleOpt = Option.builder(SCALE_ARG).argName("[float]|[int]dp").hasArg(true) .desc(bundle.getString("arg.descr.cmd.scale")).build(); Option dstOpt = Option.builder(DST_ARG).hasArg(true).argName("path") .desc(bundle.getString("arg.descr.cmd.dst")).build(); Option platform = Option.builder(PLATFORM_ARG).hasArg(true).argName("all|android|ios|win|web") .desc(MessageFormat.format(bundle.getString("arg.descr.cmd.platform"), Arguments.DEFAULT_PLATFORM)) .build();// w ww .j a v a2 s. c om Option threadCount = Option.builder(THREADS_ARG).argName("1-8").hasArg(true).desc(MessageFormat .format(bundle.getString("arg.descr.cmd.threads"), String.valueOf(Arguments.DEFAULT_THREAD_COUNT))) .build(); Option roundingHandler = Option .builder(ROUNDING_MODE_ARG).argName("round|ceil|floor").hasArg(true).desc(MessageFormat .format(bundle.getString("arg.descr.cmd.rounding"), Arguments.DEFAULT_ROUNDING_STRATEGY)) .build(); Option compression = Option.builder(OUT_COMPRESSION_ARG).hasArg(true).argName("png|jpg|gif|bmp") .desc(bundle.getString("arg.descr.cmd.outcompression")).build(); Option compressionQuality = Option.builder(COMPRESSION_QUALITY_ARG).hasArg(true).argName("0.0-1.0") .desc(MessageFormat.format(bundle.getString("arg.descr.cmd.compression"), String.valueOf(Arguments.DEFAULT_COMPRESSION_QUALITY))) .build(); Option upScalingAlgo = Option.builder(UPSCALING_ALGO_ARG).hasArg(true) .argName(EScalingAlgorithm.getCliArgString(EScalingAlgorithm.Type.UPSCALING)) .desc(MessageFormat.format(bundle.getString("arg.descr.scalingalgo"), Arguments.DEFAULT_PLATFORM)) .build(); Option downScalingAlgo = Option.builder(DOWNSCALING_ALGO_ARG).hasArg(true) .argName(EScalingAlgorithm.getCliArgString(EScalingAlgorithm.Type.DOWNSCALING)) .desc(MessageFormat.format(bundle.getString("arg.descr.scalingalgo"), Arguments.DEFAULT_PLATFORM)) .build(); Option skipExistingFiles = Option.builder(SKIP_EXISTING_ARG) .desc(bundle.getString("arg.descr.skipexisting")).build(); Option androidIncludeLdpiTvdpi = Option.builder("androidIncludeLdpiTvdpi") .desc(bundle.getString("arg.descr.androidmipmap")).build(); Option mipmapInsteadOfDrawable = Option.builder("androidMipmapInsteadOfDrawable") .desc(bundle.getString("arg.descr.androidldpi")).build(); Option iosCreateImagesetFolders = Option.builder("iosCreateImagesetFolders") .desc(bundle.getString("arg.descr.iosimageset")).build(); Option skipUpscaling = Option.builder("skipUpscaling").desc(bundle.getString("arg.descr.skipupscaling")) .build(); Option verboseLog = Option.builder(VERBOSE_ARG).desc(bundle.getString("arg.descr.cmd.verbose")).build(); Option haltOnError = Option.builder("haltOnError").desc(bundle.getString("arg.descr.halterror")).build(); Option antiAliasing = Option.builder("antiAliasing").desc(bundle.getString("arg.descr.antialiasing")) .build(); Option enablePngCrush = Option.builder("postProcessorPngCrush").desc(bundle.getString("arg.descr.pngcrush")) .build(); Option postWebpConvert = Option.builder("postProcessorWebp").desc(bundle.getString("arg.descr.webp")) .build(); Option keepUnPostProcessed = Option.builder("keepOriginalPostProcessedFiles") .desc(bundle.getString("arg.descr.keeporiginal")).build(); Option dpScaleIsHeight = Option.builder(SCALE_IS_HEIGHT_DP_ARG) .desc(bundle.getString("arg.descr.cmd.dpIsHeight")).build(); Option dryRun = Option.builder("dryRun").desc(bundle.getString("arg.descr.dryrun")).build(); Option enableMozJpeg = Option.builder("postProcessorMozJpeg").desc(bundle.getString("arg.descr.mozjpeg")) .build(); Option cleanBeforeConvert = Option.builder("clean").desc(bundle.getString("arg.descr.clean")).build(); Option help = Option.builder("h").longOpt("help").desc(bundle.getString("arg.descr.cmd.help")).build(); Option version = Option.builder("v").longOpt("version").desc(bundle.getString("arg.descr.cmd.version")) .build(); Option gui = Option.builder("gui").desc(bundle.getString("arg.descr.cmd.gui")).build(); OptionGroup mainArgs = new OptionGroup(); mainArgs.addOption(srcOpt).addOption(help).addOption(version).addOption(gui); mainArgs.setRequired(true); options.addOption(srcScaleOpt).addOption(dstOpt); options.addOption(platform).addOption(compression).addOption(compressionQuality).addOption(threadCount) .addOption(roundingHandler).addOption(upScalingAlgo).addOption(downScalingAlgo); options.addOption(skipExistingFiles).addOption(skipUpscaling).addOption(androidIncludeLdpiTvdpi) .addOption(verboseLog).addOption(antiAliasing).addOption(dryRun).addOption(haltOnError) .addOption(mipmapInsteadOfDrawable).addOption(enablePngCrush).addOption(postWebpConvert) .addOption(dpScaleIsHeight).addOption(enableMozJpeg).addOption(keepUnPostProcessed) .addOption(iosCreateImagesetFolders).addOption(cleanBeforeConvert); options.addOptionGroup(mainArgs); return options; }
From source file:de.unibi.techfak.bibiserv.util.codegen.Main.java
/** * Returns "Choice" optiongroup for CodeGeneration. * * @return/*from w w w . j a v a 2 s. co m*/ */ private static OptionGroup getCMDLineOptionsGroups() { OptionGroup optionsgroup = new OptionGroup(); optionsgroup.setRequired(true); Option generate = new Option("g", "generate", true, "Generate app from xml description."); generate.setArgName("runnableitem.xml"); optionsgroup.addOption(new Option("V", "version", false, "version")) .addOption(new Option("h", "help", false, "help")).addOption(generate); return optionsgroup; }
From source file:com.imgur.backup.SnapshotS3Util.java
/** * Returns the command-line options supported. * @return the command-line options//from w w w . j a va 2s . c o m */ private static Options getOptions() { Option tableName = new Option("t", "table", true, "The table name to create a snapshot from. Required for creating a snapshot"); Option snapshotName = new Option("n", "snapshot", true, "The snapshot name. Required for importing from S3"); Option accessId = new Option("k", "awsAccessKey", true, "The AWS access key"); Option accessSecret = new Option("s", "awsAccessSecret", true, "The AWS access secret string"); Option bucketName = new Option("b", "bucketName", true, "The S3 bucket name where snapshots are stored"); Option s3Path = new Option("p", "s3Path", true, "The snapshot directory in S3. Default is '/hbase'"); Option hdfsPath = new Option("d", "hdfsPath", true, "The snapshot directory in HDFS. Default is '/hbase'"); Option mappers = new Option("m", "mappers", true, "The number of parallel copiers if copying to/from S3. Default: 1"); Option useS3n = new Option("a", "s3n", false, "Use s3n protocol instead of s3. Might work better, but beware of 5GB file limit imposed by S3"); Option snapshotTtl = new Option("l", "snapshotTtl", true, "Delete snapshots older than this value (seconds) from running HBase cluster"); tableName.setRequired(false); snapshotName.setRequired(false); accessId.setRequired(true); accessSecret.setRequired(true); bucketName.setRequired(true); s3Path.setRequired(false); hdfsPath.setRequired(false); mappers.setRequired(false); useS3n.setRequired(false); snapshotTtl.setRequired(false); Option createSnapshot = new Option("c", "create", false, "Create HBase snapshot"); Option createExportSnapshot = new Option("x", "createExport", false, "Create HBase snapshot AND export to S3"); Option exportSnapshot = new Option("e", "export", false, "Export HBase snapshot to S3"); Option importSnapshot = new Option("i", "import", false, "Import HBase snapshot from S3. May need to run as hbase user if importing into HBase"); OptionGroup actions = new OptionGroup(); actions.setRequired(true); actions.addOption(createSnapshot); actions.addOption(createExportSnapshot); actions.addOption(exportSnapshot); actions.addOption(importSnapshot); Options options = new Options(); options.addOptionGroup(actions); options.addOption(tableName); options.addOption(snapshotName); options.addOption(accessId); options.addOption(accessSecret); options.addOption(bucketName); options.addOption(s3Path); options.addOption(hdfsPath); options.addOption(mappers); options.addOption(useS3n); options.addOption(snapshotTtl); return options; }
From source file:at.newmedialab.ldpath.backend.linkeddata.LDQuery.java
private static Options buildOptions() { Options result = new Options(); OptionGroup query = new OptionGroup(); Option path = OptionBuilder.withArgName("path").hasArg() .withDescription("LD Path to evaluate on the file starting from the context").create("path"); Option program = OptionBuilder.withArgName("file").hasArg() .withDescription("LD Path program to evaluate on the file starting from the context") .create("program"); query.addOption(path);/*w w w . j a v a 2 s .c om*/ query.addOption(program); query.setRequired(true); result.addOptionGroup(query); Option context = OptionBuilder.withArgName("uri").hasArg() .withDescription("URI of the context node to start from").create("context"); context.setRequired(true); result.addOption(context); Option loglevel = OptionBuilder.withArgName("level").hasArg() .withDescription("set the log level; default is 'warn'").create("loglevel"); result.addOption(loglevel); Option store = OptionBuilder.withArgName("dir").hasArg() .withDescription("cache the retrieved data in this directory").create("store"); result.addOption(store); return result; }