Example usage for org.apache.commons.cli OptionGroup setRequired

List of usage examples for org.apache.commons.cli OptionGroup setRequired

Introduction

In this page you can find the example usage for org.apache.commons.cli OptionGroup setRequired.

Prototype

public void setRequired(boolean required) 

Source Link

Usage

From source file:org.eclipse.jubula.app.autrun.AutRunApplication.java

/**
 * @return the command line options available when invoking the main method. 
 *//*from   w  ww. j a  v  a  2  s.co  m*/
private static Options createCmdLineOptions() {
    Options options = new Options();
    Option autAgentHostOption = new Option(OPT_AUT_AGENT_HOST, true,
            NLS.bind(Messages.infoAutAgentHost, DEFAULT_AUT_AGENT_HOST));
    autAgentHostOption.setLongOpt(OPT_AUT_AGENT_HOST_LONG);
    autAgentHostOption.setArgName(HOSTNAME);
    options.addOption(autAgentHostOption);

    Option autAgentPortOption = new Option(OPT_AUT_AGENT_PORT, true,
            NLS.bind(Messages.infoAutAgentPort, DEFAULT_AUT_AGENT_PORT));
    autAgentPortOption.setLongOpt(OPT_AUT_AGENT_PORT_LONG);
    autAgentPortOption.setArgName(PORT);
    options.addOption(autAgentPortOption);

    OptionGroup autToolkitOptionGroup = new OptionGroup();
    autToolkitOptionGroup.addOption(new Option(TK_SWING, Messages.infoSwingToolkit));
    autToolkitOptionGroup.addOption(new Option(TK_SWT, Messages.infoSwtToolkit));
    autToolkitOptionGroup.addOption(new Option(TK_RCP, Messages.infoRcpToolkit));
    autToolkitOptionGroup.setRequired(true);
    options.addOptionGroup(autToolkitOptionGroup);

    Option autIdOption = new Option(OPT_AUT_ID, true, Messages.infoAutId);
    autIdOption.setLongOpt(OPT_AUT_ID_LONG);
    autIdOption.setArgName(ID);
    autIdOption.setRequired(true);
    options.addOption(autIdOption);

    Option nameTechnicalComponentsOption = new Option(OPT_NAME_TECHNICAL_COMPONENTS, true,
            Messages.infoGenerateTechnicalComponentNames);
    nameTechnicalComponentsOption.setLongOpt(OPT_NAME_TECHNICAL_COMPONENTS_LONG);
    nameTechnicalComponentsOption.setArgName(TRUE_FALSE);
    options.addOption(nameTechnicalComponentsOption);

    Option keyboardLayoutOption = new Option(OPT_KEYBOARD_LAYOUT, true, Messages.infoKbLayout);
    keyboardLayoutOption.setLongOpt(OPT_KEYBOARD_LAYOUT_LONG);
    keyboardLayoutOption.setArgName(LOCALE);
    options.addOption(keyboardLayoutOption);

    Option workingDirOption = new Option(OPT_WORKING_DIR, true, Messages.infoAutWorkingDirectory);
    workingDirOption.setLongOpt(OPT_WORKING_DIR_LONG);
    workingDirOption.setArgName(DIRECTORY);
    options.addOption(workingDirOption);

    Option helpOption = new Option(OPT_HELP, false, Messages.infoHelp);
    helpOption.setLongOpt(OPT_HELP_LONG);
    options.addOption(helpOption);

    OptionBuilder.hasArgs();
    Option autExecutableFileOption = OptionBuilder.create(OPT_EXECUTABLE);
    autExecutableFileOption.setDescription(Messages.infoExecutableFile);
    autExecutableFileOption.setLongOpt(OPT_EXECUTABLE_LONG);
    autExecutableFileOption.setRequired(true);
    autExecutableFileOption.setArgName(COMMAND);
    options.addOption(autExecutableFileOption);

    return options;
}

From source file:org.eclipse.jubula.app.testexec.core.TestexecClient.java

/**
 * {@inheritDoc}//from ww w.  jav  a2 s .  c  om
 */
protected void extendOptions(Options options, boolean req) {
    options.addOption(createOption(ClientTestStrings.SERVER, true, ClientTestStrings.HOSTNAME,
            Messages.ClientServerOpt, false));
    options.addOption(createOption(ClientTestStrings.PORT, true, ClientTestStrings.PORT_NUMBER,
            Messages.ClientPortOpt, false));
    options.addOption(createOption(ClientTestStrings.PROJECT, true, ClientTestStrings.PROJECT_NAME,
            Messages.ClientProjectOpt, req));
    options.addOption(createOption(ClientTestStrings.PROJECT_VERSION, true,
            ClientTestStrings.PROJECT_VERSION_EX, Messages.ClientProjectVersionOpt, req));
    options.addOption(createOption(ClientTestStrings.LANGUAGE, true, ClientTestStrings.LANGUAGE,
            Messages.ClientLanguageOpt, req));
    options.addOption(createOption(ClientTestStrings.RESULTDIR, true, ClientTestStrings.RESULTDIR,
            Messages.ClientResultdirOpt, false));
    options.addOption(createOption(ClientStrings.RESULT_NAME, true, ClientStrings.RESULT_NAME,
            Messages.ClientResultnameOpt, false));
    // AUT option group (AUT Configuration / AUT ID)
    OptionGroup autOptionGroup = new OptionGroup();
    autOptionGroup.setRequired(false);
    autOptionGroup.addOption(createOption(ClientTestStrings.AUT_CONFIG, true, ClientTestStrings.AUT_CONFIG,
            Messages.ClientAutconfigOpt, req));
    autOptionGroup.addOption(createOption(ClientTestStrings.AUT_ID, true, ClientTestStrings.AUT_ID,
            Messages.ClientAutIdOpt, req));
    options.addOptionGroup(autOptionGroup);

    // Test execution type option group (Test Suite / Test Job)
    OptionGroup testExecutionGroup = new OptionGroup();
    testExecutionGroup.setRequired(req);
    testExecutionGroup.addOption(createOption(ClientTestStrings.TESTJOB, true, ClientTestStrings.TESTJOB,
            Messages.ClientTestJobOpt, req));
    testExecutionGroup.addOption(createOption(ClientTestStrings.TESTSUITE, true, ClientTestStrings.TESTSUITE,
            Messages.ClientTestSuiteOpt, req));
    options.addOptionGroup(testExecutionGroup);

    options.addOption(createOption(ClientTestStrings.DATA_DIR, true, ClientTestStrings.DATA_DIR_EX,
            Messages.ClientDataFile, false));
    Option noRunOption = createOption(ClientStrings.NORUN, true, ClientStrings.NORUN_MODE,
            Messages.ClientNoRunOpt, false);
    noRunOption.setOptionalArg(true);
    options.addOption(noRunOption);
    options.addOption(createOption(ClientTestStrings.AUTO_SCREENSHOT, false, StringConstants.EMPTY,
            Messages.ClientAutoScreenshot, false));
    options.addOption(createOption(ClientTestStrings.NO_XML_SCREENSHOT, false, StringConstants.EMPTY,
            Messages.ClientNoXmlScreenshot, false));
    options.addOption(createOption(ClientTestStrings.TIMEOUT, true, ClientTestStrings.TIMEOUT,
            Messages.ClientTimeout, false));
    // server option for the CLC extension
    options.addOption(createOption(ClientTestStrings.STARTSERVER, true, ClientTestStrings.PORT_NUMBER,
            Messages.ClientStartServerOpt, false));
}

From source file:org.eclipse.jubula.app.testexec.TestexecClient.java

/**
 * {@inheritDoc}/*from  w  ww.j av  a 2 s .  c  o  m*/
 */
protected void extendOptions(Options options, boolean req) {
    options.addOption(createOption(ClientTestStrings.SERVER, true, ClientTestStrings.HOSTNAME,
            Messages.ClientServerOpt, req));
    options.addOption(createOption(ClientTestStrings.PORT, true, ClientTestStrings.PORT_NUMBER,
            Messages.ClientPortOpt, req));
    options.addOption(createOption(ClientTestStrings.PROJECT, true, ClientTestStrings.PROJECT_NAME,
            Messages.ClientProjectOpt, req));
    options.addOption(createOption(ClientTestStrings.PROJECT_VERSION, true,
            ClientTestStrings.PROJECT_VERSION_EX, Messages.ClientProjectVersionOpt, req));
    options.addOption(createOption(ClientTestStrings.LANGUAGE, true, ClientTestStrings.LANGUAGE,
            Messages.ClientLanguageOpt, req));
    options.addOption(createOption(ClientTestStrings.RESULTDIR, true, ClientTestStrings.RESULTDIR,
            Messages.ClientResultdirOpt, req));

    // AUT option group (AUT Configuration / AUT ID)
    OptionGroup autOptionGroup = new OptionGroup();
    autOptionGroup.setRequired(false);
    autOptionGroup.addOption(createOption(ClientTestStrings.AUT_CONFIG, true, ClientTestStrings.AUT_CONFIG,
            Messages.ClientAutconfigOpt, req));
    autOptionGroup.addOption(createOption(ClientTestStrings.AUT_ID, true, ClientTestStrings.AUT_ID,
            Messages.ClientAutIdOpt, req));
    options.addOptionGroup(autOptionGroup);

    // Test execution type option group (Test Suite / Test Job)
    OptionGroup testExecutionGroup = new OptionGroup();
    testExecutionGroup.setRequired(req);
    testExecutionGroup.addOption(createOption(ClientTestStrings.TESTJOB, true, ClientTestStrings.TESTJOB,
            Messages.ClientTestJobOpt, req));
    testExecutionGroup.addOption(createOption(ClientTestStrings.TESTSUITE, true, ClientTestStrings.TESTSUITE,
            Messages.ClientTestSuiteOpt, req));
    options.addOptionGroup(testExecutionGroup);

    options.addOption(createOption(ClientTestStrings.DATA_DIR, true, ClientTestStrings.DATA_DIR_EX,
            Messages.ClientDataFile, req));
    options.addOption(
            createOption(ClientStrings.NORUN, false, StringConstants.EMPTY, Messages.ClientNoRunOpt, false));
    options.addOption(createOption(ClientTestStrings.AUTO_SCREENSHOT, false, StringConstants.EMPTY,
            Messages.ClientAutoScreenshot, false));
    options.addOption(createOption(ClientTestStrings.NO_XML_SCREENSHOT, false, StringConstants.EMPTY,
            Messages.ClientNoXmlScreenshot, false));
    options.addOption(createOption(ClientTestStrings.TEST_EXECUTION_RELEVANT, false, StringConstants.EMPTY,
            Messages.ClientRelevantFlag, false));
    options.addOption(createOption(ClientTestStrings.TIMEOUT, true, ClientTestStrings.TIMEOUT,
            Messages.ClientTimeout, false));
    // server option for the CLC extension
    options.addOption(createOption(ClientTestStrings.STARTSERVER, true, ClientTestStrings.PORT_NUMBER,
            Messages.ClientStartServerOpt, false));
}

From source file:org.hashes.ui.CliOption.java

/**
 * Build all command line options.// w w w.  j a  v  a2 s  .  co  m
 * 
 * @return command line options
 */
public static Options buildOptions() {

    final OptionGroup lang = new OptionGroup();
    lang.setRequired(false);
    lang.addOption(PHP.getOption());
    lang.addOption(JAVA.getOption());
    lang.addOption(ASP.getOption());
    lang.addOption(V8.getOption());

    final Options options = new Options();
    options.addOption(HELP.getOption());
    options.addOption(PROGRESS_BAR.getOption());
    options.addOption(SAVE_KEYS.getOption());
    options.addOption(WAIT.getOption());
    options.addOption(NEW.getOption());
    options.addOption(KEYS.getOption());
    options.addOption(REQUESTS.getOption());
    options.addOption(CLIENTS.getOption());
    options.addOption(CONNECTION_TIMEOUT.getOption());
    options.addOption(READ_TIMEOUT.getOption());
    options.addOption(MITM_WORKER_THREADS.getOption());
    options.addOption(HEADER.getOption());
    options.addOptionGroup(lang);

    return options;
}

From source file:org.jalphanode.ui.JalphaNodeCli.java

private Options buildCmdOptions() {

    final OptionGroup optionGroup = new OptionGroup();
    optionGroup.setRequired(true);
    optionGroup.addOption(ComandLineOptions.CONFIG_PATH.getOption());
    optionGroup.addOption(ComandLineOptions.GUI.getOption());
    optionGroup.addOption(ComandLineOptions.HELP.getOption());

    final Options options = new Options();
    options.addOptionGroup(optionGroup);

    return options;
}

From source file:org.jboss.as.security.vault.VaultTool.java

/**
 * Build options for non-interactive VaultTool usage scenario.
 *
 * @return/*from w ww .  j a v  a 2 s  .  c o m*/
 */
private void initOptions() {
    options = new Options();
    options.addOption("k", KEYSTORE_PARAM, true, SecurityLogger.ROOT_LOGGER.cmdLineKeyStoreURL());
    options.addOption("p", KEYSTORE_PASSWORD_PARAM, true, SecurityLogger.ROOT_LOGGER.cmdLineKeyStorePassword());
    options.addOption("e", ENC_DIR_PARAM, true, SecurityLogger.ROOT_LOGGER.cmdLineEncryptionDirectory());
    options.addOption("s", SALT_PARAM, true, SecurityLogger.ROOT_LOGGER.cmdLineSalt());
    options.addOption("i", ITERATION_PARAM, true, SecurityLogger.ROOT_LOGGER.cmdLineIterationCount());
    options.addOption("v", ALIAS_PARAM, true, SecurityLogger.ROOT_LOGGER.cmdLineVaultKeyStoreAlias());
    options.addOption("b", VAULT_BLOCK_PARAM, true, SecurityLogger.ROOT_LOGGER.cmdLineVaultBlock());
    options.addOption("a", ATTRIBUTE_PARAM, true, SecurityLogger.ROOT_LOGGER.cmdLineAttributeName());
    options.addOption("t", CREATE_KEYSTORE_PARAM, false,
            SecurityLogger.ROOT_LOGGER.cmdLineAutomaticallyCreateKeystore());

    OptionGroup og = new OptionGroup();
    Option x = new Option("x", SEC_ATTR_VALUE_PARAM, true,
            SecurityLogger.ROOT_LOGGER.cmdLineSecuredAttribute());
    Option c = new Option("c", CHECK_SEC_ATTR_EXISTS_PARAM, false,
            SecurityLogger.ROOT_LOGGER.cmdLineCheckAttribute());
    Option r = new Option("r", REMOVE_SEC_ATTR_PARAM, false,
            SecurityLogger.ROOT_LOGGER.cmdLineRemoveSecuredAttribute());
    Option h = new Option("h", HELP_PARAM, false, SecurityLogger.ROOT_LOGGER.cmdLineHelp());
    og.addOption(x);
    og.addOption(c);
    og.addOption(r);
    og.addOption(h);
    og.setRequired(true);
    options.addOptionGroup(og);
}

From source file:org.jcryptool.commands.core.api.AbstractCommand.java

@SuppressWarnings("static-access")
protected void createInputOptions(Options options) {
    OptionGroup inputMode = new OptionGroup();

    inputMode.addOption(OptionBuilder.withLongOpt(TEXTINPUT_LONG_OPTIONNAME).hasArg(true)
            .withArgName(TEXTINPUT_ARGUMENT1_NAME).withDescription(Messages.AbstractCommand_0)
            .create(TEXTINPUT_OPTIONNAME));

    inputMode.addOption(OptionBuilder.withLongOpt(FILEINPUT_LONG_OPTIONNAME).hasArg(true)
            .withArgName(FILEINPUT_ARGUMENT1_NAME).withDescription(Messages.AbstractCommand_1)
            .create(FILEINPUT_OPTIONNAME));

    inputMode.addOption(OptionBuilder.withLongOpt(EDITORINPUT_LONG_OPTIONNAME).hasArg(false)
            .withDescription(Messages.AbstractCommand_2).create(EDITORINPUT_OPTIONNAME));

    inputMode.setRequired(true);

    options.addOptionGroup(inputMode);//w  w w  . j a  v  a  2s .  c  o  m
}

From source file:org.jcryptool.crypto.classic.model.algorithm.ClassicAlgorithmCmd.java

@SuppressWarnings("static-access")
public Options createOptions() {
    Options options = new Options();

    // key input options
    createKeyOptions(options);//from w  ww .  j a v a2  s . co m
    // Alphabet input options
    createAlphabetOptions(options);
    // Option not to filter nonalphabetic characters (if option is set, filtering does NOT occur) -> filtering by default. 
    options.addOption(OptionBuilder.withLongOpt(NOFILTER_LONG_OPTIONNAME).hasArg( //$NON-NLS-1$
            false).withDescription(Messages.ClassicAlgorithmCmd_filteroption).create(NOFILTER_OPTIONNAME)); //$NON-NLS-1$

    // Encoding or decoding options group:

    OptionGroup codingMode = new OptionGroup();
    codingMode.addOption(OptionBuilder.withLongOpt(MODEENCRYPTION_LONG_OPTIONNAME).hasArg( //$NON-NLS-1$
            false).withDescription(Messages.ClassicAlgorithmCmd_encryptMode).create(MODEENCRYPTION_OPTIONNAME)); //$NON-NLS-1$
    codingMode.addOption(OptionBuilder.withLongOpt(MODEDECRYPTION_LONG_OPTIONNAME).hasArg( //$NON-NLS-1$
            false).withDescription(Messages.ClassicAlgorithmCmd_decryptMode).create(MODEDECRYPTION_OPTIONNAME)); //$NON-NLS-1$
    codingMode.setRequired(true);
    options.addOptionGroup(codingMode);

    // Text input option group

    createInputOptions(options);

    // other options contributed by subclasses

    createOtherOptions(options);

    return options;
}

From source file:org.krysalis.barcode4j.cli.Main.java

private Options getOptions() {
    if (options == null) {
        this.options = new Options();
        Option opt;//from  w w  w  .  ja  va2 s .c  om

        this.options.addOption(
                OptionBuilder.withLongOpt("verbose").withDescription("enable debug output").create('v'));

        //Group: file/stdout
        this.options.addOption(OptionBuilder.withLongOpt("output").withArgName("file").hasArg()
                .withDescription("the output filename").create('o'));

        //Group: config file/barcode type
        OptionGroup group = new OptionGroup();
        group.setRequired(true);
        group.addOption(OptionBuilder.withArgName("file").withLongOpt("config").hasArg()
                .withDescription("the config file").create('c'));
        group.addOption(OptionBuilder.withArgName("name").withLongOpt("symbol").hasArg().withDescription(
                "the barcode symbology to select " + "(default settings, use -c if you want to customize)")
                .create('s'));
        this.options.addOptionGroup(group);

        //Output format type
        this.options.addOption(OptionBuilder.withArgName("format").withLongOpt("format").hasArg()
                .withDescription("the output format: MIME type or file " + "extension\n" + "Default: "
                        + MimeTypes.MIME_SVG + " (SVG)")
                .create('f'));

        //Bitmap-specific options
        this.options.addOption(OptionBuilder.withArgName("integer").withLongOpt("dpi").hasArg()
                .withDescription("(for bitmaps) the image resolution in dpi\n" + "Default: 300").create('d'));
        this.options.addOption(OptionBuilder.withLongOpt("bw")
                .withDescription(
                        "(for bitmaps) create monochrome (1-bit) " + "image instead of grayscale (8-bit)")
                .create());
    }
    return this.options;
}

From source file:org.linqs.psl.cli.Launcher.java

private static Options setupOptions() {
    Options options = new Options();

    OptionGroup mainCommand = new OptionGroup();

    mainCommand.addOption(Option.builder(OPERATION_INFER).longOpt(OPERATION_INFER_LONG)
            .desc("Run MAP inference."
                    + " You can optionally supply a fully qualified name for an inference application"
                    + " (defaults to " + DEFAULT_IA + ").")
            .hasArg().argName("inferenceMethod").optionalArg(true).build());

    mainCommand.addOption(Option.builder(OPERATION_LEARN).longOpt(OPERATION_LEARN_LONG)
            .desc("Run weight learning."
                    + " You can optionally supply a fully qualified name for a weight learner"
                    + " (defaults to " + DEFAULT_WLA + ").")
            .hasArg().argName("learner").optionalArg(true).build());

    // Make sure that help and version are in the main group so a successful run can use them.

    mainCommand.addOption(Option.builder(OPTION_HELP).longOpt(OPTION_HELP_LONG)
            .desc("Print this help message and exit").build());

    mainCommand.addOption(Option.builder(OPTION_VERSION).longOpt(OPTION_VERSION_LONG)
            .desc("Print the PSL version and exit").build());

    mainCommand.setRequired(true);
    options.addOptionGroup(mainCommand);

    options.addOption(Option.builder(OPTION_DATA).longOpt(OPTION_DATA_LONG).desc("Path to PSL data file")
            .hasArg().argName("path").build());

    options.addOption(Option.builder().longOpt(OPTION_DB_H2_PATH)
            .desc("Path for H2 database file (defaults to 'cli_<user name>@<host name>' ('" + DEFAULT_H2_DB_PATH
                    + "'))." + " Not compatible with the '--" + OPTION_DB_POSTGRESQL_NAME + "' option.")
            .hasArg().argName("path").build());

    options.addOption(Option.builder().longOpt(OPTION_DB_POSTGRESQL_NAME)
            .desc("Name for the PostgreSQL database to use (defaults to " + DEFAULT_POSTGRES_DB_NAME + ")."
                    + " Not compatible with the '--" + OPTION_DB_H2_PATH + "' option."
                    + " Currently only local databases without credentials are supported.")
            .hasArg().argName("name").optionalArg(true).build());

    options.addOption(Option.builder(OPTION_EVAL).longOpt(OPTION_EVAL_LONG)
            .desc("Run the named evaluator (" + Evaluator.class.getName()
                    + ") on any open predicate with a 'truth' partition.")
            .hasArg().argName("evaluator").build());

    options.addOption(Option.builder(OPTION_INT_IDS).longOpt(OPTION_INT_IDS_LONG)
            .desc("Use integer identifiers (UniqueIntID) instead of string identifiers (UniqueStringID).")
            .build());//from  w  ww .j av a 2 s .  co m

    options.addOption(Option.builder(OPTION_LOG4J).longOpt(OPTION_LOG4J_LONG)
            .desc("Optional log4j properties file path").hasArg().argName("path").build());

    options.addOption(Option.builder(OPTION_MODEL).longOpt(OPTION_MODEL_LONG).desc("Path to PSL model file")
            .hasArg().argName("path").build());

    options.addOption(Option.builder(OPTION_OUTPUT_DIR).longOpt(OPTION_OUTPUT_DIR_LONG)
            .desc("Optional path for writing results to filesystem (default is STDOUT)").hasArg()
            .argName("path").build());

    options.addOption(Option.builder(OPTION_PROPERTIES_FILE).longOpt(OPTION_PROPERTIES_FILE_LONG)
            .desc("Optional PSL properties file path").hasArg().argName("path").build());

    options.addOption(Option.builder(OPTION_PROPERTIES).argName("name=value")
            .desc("Directly specify PSL properties (overrides options set via --" + OPTION_PROPERTIES_FILE_LONG
                    + ")."
                    + " See https://github.com/linqs/psl/wiki/Configuration-Options for a list of available options."
                    + " Log4j properties (properties starting with 'log4j') will be passed to the logger."
                    + " 'log4j.threshold=DEBUG', for example, will be passed to log4j and set the global logging threshold.")
            .hasArg().numberOfArgs(2).valueSeparator('=').build());

    return options;
}