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

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

Introduction

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

Prototype

public OptionGroup addOption(Option option) 

Source Link

Document

Add the specified Option to this group.

Usage

From source file:org.dspace.eperson.EPersonCLITool.java

/**
 * Tool for manipulating user accounts.//w w w.  ja  va2 s . c o m
 *
 * @param argv the command line arguments given
 * @throws ParseException
 *     Base for Exceptions thrown during parsing of a command-line.
 * @throws SQLException
 *     An exception that provides information on a database access error or other errors.
 * @throws AuthorizeException
 *     Exception indicating the current user of the context does not have permission
 *     to perform a particular action.
 */
public static void main(String argv[]) throws ParseException, SQLException, AuthorizeException {
    final OptionGroup VERBS = new OptionGroup();
    VERBS.addOption(VERB_ADD);
    VERBS.addOption(VERB_DELETE);
    VERBS.addOption(VERB_LIST);
    VERBS.addOption(VERB_MODIFY);

    final Options globalOptions = new Options();
    globalOptions.addOptionGroup(VERBS);
    globalOptions.addOption("h", "help", false, "explain options");

    GnuParser parser = new GnuParser();
    CommandLine command = parser.parse(globalOptions, argv, true);

    Context context = new Context();

    // Disable authorization since this only runs from the local commandline.
    context.turnOffAuthorisationSystem();

    int status = 0;
    if (command.hasOption(VERB_ADD.getOpt())) {
        status = cmdAdd(context, argv);
    } else if (command.hasOption(VERB_DELETE.getOpt())) {
        status = cmdDelete(context, argv);
    } else if (command.hasOption(VERB_MODIFY.getOpt())) {
        status = cmdModify(context, argv);
    } else if (command.hasOption(VERB_LIST.getOpt())) {
        status = cmdList(context, argv);
    } else if (command.hasOption('h')) {
        new HelpFormatter().printHelp("user [options]", globalOptions);
    } else {
        System.err.println("Unknown operation.");
        new HelpFormatter().printHelp("user [options]", globalOptions);
        context.abort();
        status = 1;
        throw new IllegalArgumentException();
    }

    if (context.isValid()) {
        try {
            context.complete();
        } catch (SQLException ex) {
            System.err.println(ex.getMessage());
        }
    }
}

From source file:org.dspace.eperson.EPersonCLITool.java

/** Command to create an EPerson. */
private static int cmdAdd(Context context, String[] argv) throws AuthorizeException, SQLException {
    Options options = new Options();

    options.addOption(VERB_ADD);//from   ww w .j av a  2s  .c  om

    final OptionGroup identityOptions = new OptionGroup();
    identityOptions.addOption(OPT_EMAIL);
    identityOptions.addOption(OPT_NETID);

    options.addOptionGroup(identityOptions);

    options.addOption(OPT_GIVENNAME);
    options.addOption(OPT_SURNAME);
    options.addOption(OPT_PHONE);
    options.addOption(OPT_LANGUAGE);
    options.addOption(OPT_REQUIRE_CERTIFICATE);

    Option option = new Option("p", "password", true, "password to match the EPerson name");
    options.addOption(option);

    options.addOption("h", "help", false, "explain --add options");

    // Rescan the command for more details.
    GnuParser parser = new GnuParser();
    CommandLine command;
    try {
        command = parser.parse(options, argv);
    } catch (ParseException e) {
        System.err.println(e.getMessage());
        return 1;
    }

    if (command.hasOption('h')) {
        new HelpFormatter().printHelp("user --add [options]", options);
        return 0;
    }

    // Check that we got sufficient credentials to define a user.
    if ((!command.hasOption(OPT_EMAIL.getOpt())) && (!command.hasOption(OPT_NETID.getOpt()))) {
        System.err.println("You must provide an email address or a netid to identify the new user.");
        return 1;
    }

    if (!command.hasOption('p')) {
        System.err.println("You must provide a password for the new user.");
        return 1;
    }

    // Create!
    EPerson eperson = null;
    try {
        eperson = ePersonService.create(context);
    } catch (SQLException ex) {
        context.abort();
        System.err.println(ex.getMessage());
        return 1;
    } catch (AuthorizeException ex) {
        /* XXX SNH */ }
    eperson.setCanLogIn(true);
    eperson.setSelfRegistered(false);

    eperson.setEmail(command.getOptionValue(OPT_EMAIL.getOpt()));
    eperson.setFirstName(context, command.getOptionValue(OPT_GIVENNAME.getOpt()));
    eperson.setLastName(context, command.getOptionValue(OPT_SURNAME.getOpt()));
    eperson.setLanguage(context,
            command.getOptionValue(OPT_LANGUAGE.getOpt(), Locale.getDefault().getLanguage()));
    ePersonService.setMetadata(context, eperson, "phone", command.getOptionValue(OPT_PHONE.getOpt()));
    eperson.setNetid(command.getOptionValue(OPT_NETID.getOpt()));
    ePersonService.setPassword(eperson, command.getOptionValue('p'));
    if (command.hasOption(OPT_REQUIRE_CERTIFICATE.getOpt())) {
        eperson.setRequireCertificate(
                Boolean.valueOf(command.getOptionValue(OPT_REQUIRE_CERTIFICATE.getOpt())));
    } else {
        eperson.setRequireCertificate(false);
    }

    try {
        ePersonService.update(context, eperson);
        context.complete();
        System.out.printf("Created EPerson %s\n", eperson.getID().toString());
    } catch (SQLException ex) {
        context.abort();
        System.err.println(ex.getMessage());
        return 1;
    } catch (AuthorizeException ex) {
        /* XXX SNH */ }

    return 0;
}

From source file:org.dspace.eperson.EPersonCLITool.java

/** Command to delete an EPerson. */
private static int cmdDelete(Context context, String[] argv) {
    Options options = new Options();

    options.addOption(VERB_DELETE);//from w  w w  . j  a va 2 s  .  co m

    final OptionGroup identityOptions = new OptionGroup();
    identityOptions.addOption(OPT_EMAIL);
    identityOptions.addOption(OPT_NETID);

    options.addOptionGroup(identityOptions);

    options.addOption("h", "help", false, "explain --delete options");

    GnuParser parser = new GnuParser();
    CommandLine command;
    try {
        command = parser.parse(options, argv);
    } catch (ParseException e) {
        System.err.println(e.getMessage());
        return 1;
    }

    if (command.hasOption('h')) {
        new HelpFormatter().printHelp("user --delete [options]", options);
        return 0;
    }

    // Delete!
    EPerson eperson = null;
    try {
        if (command.hasOption(OPT_NETID.getOpt())) {
            eperson = ePersonService.findByNetid(context, command.getOptionValue(OPT_NETID.getOpt()));
        } else if (command.hasOption(OPT_EMAIL.getOpt())) {
            eperson = ePersonService.findByEmail(context, command.getOptionValue(OPT_EMAIL.getOpt()));
        } else {
            System.err.println("You must specify the user's email address or netid.");
            return 1;
        }
    } catch (SQLException e) {
        System.err.append(e.getMessage());
        return 1;
    }

    if (null == eperson) {
        System.err.println("No such EPerson");
        return 1;
    }

    try {
        ePersonService.delete(context, eperson);
        context.complete();
        System.out.printf("Deleted EPerson %s\n", eperson.getID().toString());
    } catch (SQLException ex) {
        System.err.println(ex.getMessage());
        return 1;
    } catch (AuthorizeException ex) {
        System.err.println(ex.getMessage());
        return 1;
    } catch (IOException ex) {
        System.err.println(ex.getMessage());
        return 1;
    }

    return 0;
}

From source file:org.dspace.eperson.EPersonCLITool.java

/** Command to modify an EPerson. */
private static int cmdModify(Context context, String[] argv) throws AuthorizeException, SQLException {
    Options options = new Options();

    options.addOption(VERB_MODIFY);//  w ww. ja  va  2  s .c om

    final OptionGroup identityOptions = new OptionGroup();
    identityOptions.addOption(OPT_EMAIL);
    identityOptions.addOption(OPT_NETID);

    options.addOptionGroup(identityOptions);

    options.addOption(OPT_GIVENNAME);
    options.addOption(OPT_SURNAME);
    options.addOption(OPT_PHONE);
    options.addOption(OPT_LANGUAGE);
    options.addOption(OPT_REQUIRE_CERTIFICATE);

    options.addOption(OPT_CAN_LOGIN);
    options.addOption(OPT_NEW_EMAIL);
    options.addOption(OPT_NEW_NETID);

    options.addOption("h", "help", false, "explain --modify options");

    GnuParser parser = new GnuParser();
    CommandLine command;
    try {
        command = parser.parse(options, argv);
    } catch (ParseException e) {
        System.err.println(e.getMessage());
        return 1;
    }

    if (command.hasOption('h')) {
        new HelpFormatter().printHelp("user --modify [options]", options);
        return 0;
    }

    // Modify!
    EPerson eperson = null;
    try {
        if (command.hasOption(OPT_NETID.getOpt())) {
            eperson = ePersonService.findByNetid(context, command.getOptionValue(OPT_NETID.getOpt()));
        } else if (command.hasOption(OPT_EMAIL.getOpt())) {
            eperson = ePersonService.findByEmail(context, command.getOptionValue(OPT_EMAIL.getOpt()));
        } else {
            System.err.println("No EPerson selected");
            return 1;
        }
    } catch (SQLException e) {
        System.err.append(e.getMessage());
        return 1;
    }

    boolean modified = false;
    if (null == eperson) {
        System.err.println("No such EPerson");
        return 1;
    } else {
        if (command.hasOption(OPT_NEW_EMAIL.getOpt())) {
            eperson.setEmail(command.getOptionValue(OPT_NEW_EMAIL.getOpt()));
            modified = true;
        }
        if (command.hasOption(OPT_NEW_NETID.getOpt())) {
            eperson.setNetid(command.getOptionValue(OPT_NEW_NETID.getOpt()));
            modified = true;
        }
        if (command.hasOption(OPT_GIVENNAME.getOpt())) {
            eperson.setFirstName(context, command.getOptionValue(OPT_GIVENNAME.getOpt()));
            modified = true;
        }
        if (command.hasOption(OPT_SURNAME.getOpt())) {
            eperson.setLastName(context, command.getOptionValue(OPT_SURNAME.getOpt()));
            modified = true;
        }
        if (command.hasOption(OPT_PHONE.getOpt())) {
            ePersonService.setMetadata(context, eperson, "phone", command.getOptionValue(OPT_PHONE.getOpt()));
            modified = true;
        }
        if (command.hasOption(OPT_LANGUAGE.getOpt())) {
            eperson.setLanguage(context, command.getOptionValue(OPT_LANGUAGE.getOpt()));
            modified = true;
        }
        if (command.hasOption(OPT_REQUIRE_CERTIFICATE.getOpt())) {
            eperson.setRequireCertificate(
                    Boolean.valueOf(command.getOptionValue(OPT_REQUIRE_CERTIFICATE.getOpt())));
            modified = true;
        }
        if (command.hasOption(OPT_CAN_LOGIN.getOpt())) {
            eperson.setCanLogIn(Boolean.valueOf(command.getOptionValue(OPT_CAN_LOGIN.getOpt())));
            modified = true;
        }
        if (modified) {
            try {
                ePersonService.update(context, eperson);
                context.complete();
                System.out.printf("Modified EPerson %s\n", eperson.getID().toString());
            } catch (SQLException ex) {
                context.abort();
                System.err.println(ex.getMessage());
                return 1;
            } catch (AuthorizeException ex) {
                /* XXX SNH */ }
        } else {
            System.out.println("No changes.");
        }
    }

    return 0;
}

From source file:org.dspace.eperson.Groomer.java

/**
 * Command line tool for "grooming" the EPerson collection.
 *///w ww .  ja  v a  2s .  c  o m
static public void main(String[] argv) throws SQLException {
    final String USAGE = "EPerson -verb [option...]";

    OptionGroup verbs = new OptionGroup();
    verbs.setRequired(true);
    verbs.addOption(new Option("h", "help", false, "explain this tool"));
    verbs.addOption(new Option("u", "unsalted", false, "list accounts with unsalted password hashes"));

    Options options = new Options();
    options.addOptionGroup(verbs);

    PosixParser parser = new PosixParser();
    CommandLine command = null;
    try {
        command = parser.parse(options, argv);
    } catch (ParseException ex) {
        System.err.println(ex.getMessage());
        if (!(ex instanceof MissingOptionException))
            new HelpFormatter().printHelp(USAGE, options);
        System.exit(1);
    }

    // Help the user
    if (command.hasOption('h') || command.hasOption('?')) {
        new HelpFormatter().printHelp(USAGE, options);
    }
    // Scan for unsalted hashes
    else if (command.hasOption('u')) {
        Context myContext = new Context();
        final TableRowIterator tri = DatabaseManager.query(myContext,
                "SELECT email FROM EPerson WHERE password IS NOT NULL AND digest_algorithm IS NULL");
        for (TableRow row = tri.next(); tri.hasNext(); row = tri.next())
            System.out.println(row.getStringColumn("email"));
        myContext.abort(); // No changes to commit
    }
    // Should not happen:  verb option defined but no code!
    else
        System.err.println("Unimplemented verb:  " + verbs.getSelected());
}

From source file:org.eclipse.jubula.app.autagent.AutAgentApplication.java

/**
 * method to create an options object, filled with all options
 *
 * @return the options//  w ww.java  2s  .c  o m
 */
private static Options createOptions() {
    Options options = new Options();

    Option portOption = new Option(COMMANDLINE_OPTION_PORT, true, Messages.CommandlineOptionPort);
    portOption.setArgName(COMMANDLINE_PORT);
    options.addOption(portOption);

    options.addOption(COMMANDLINE_OPTION_LENIENT, false, Messages.CommandlineOptionLenient);
    options.addOption(COMMANDLINE_OPTION_HELP, false, Messages.CommandlineOptionHelp);

    OptionGroup verbosityOptions = new OptionGroup();
    verbosityOptions.addOption(new Option(COMMANDLINE_OPTION_QUIET, false, Messages.CommandlineOptionQuiet));
    verbosityOptions
            .addOption(new Option(COMMANDLINE_OPTION_VERBOSE, false, Messages.CommandlineOptionVerbose));
    options.addOptionGroup(verbosityOptions);

    OptionGroup startStopOptions = new OptionGroup();
    startStopOptions.addOption(new Option(COMMANDLINE_OPTION_START, false, Messages.CommandlineOptionStart));

    OptionBuilder.hasOptionalArg();
    Option stopOption = OptionBuilder.create(COMMANDLINE_OPTION_STOP);
    stopOption.setDescription(NLS.bind(Messages.OptionStopDescription, DEFAULT_HOSTNAME_LOCALHOST));
    stopOption.setArgName(HOSTNAME);
    startStopOptions.addOption(stopOption);
    options.addOptionGroup(startStopOptions);

    return options;
}

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

/**
 * @return the command line options available when invoking the main method. 
 *///from  w w  w. j  a  va  2 s  . c om
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}/* w  w w .  j  ava 2  s. co m*/
 */
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  w w .ja  va 2s . c  om*/
 */
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.eclipse.jubula.client.cmd.AbstractCmdlineClient.java

/**
 * method to create an options object, filled with all options
 * @param req/*from   w  w  w.  jav a2 s  .c o  m*/
 *      boolean flag must be true for an required option
 *      this is only used for printing the correct usage
 * @return the options
 */
private Options createOptions(boolean req) {
    Options options = new Options();
    options.addOption(
            createOption(ClientStrings.HELP, false, StringConstants.EMPTY, Messages.ClientHelpOpt, false));
    options.addOption(
            createOption(ClientStrings.QUIET, false, StringConstants.EMPTY, Messages.ClientQuietOpt, false));
    options.addOption(createOption(ClientStrings.CONFIG, true, ClientStrings.CONFIGFILE,
            Messages.ClientConfigOpt, false));
    OptionGroup ogConnection = new OptionGroup();

    ogConnection.addOption(createOption(ClientTestStrings.DBURL, true, ClientTestStrings.DATABASE,
            Messages.ClientDburlOpt, false));
    ogConnection.addOption(createOption(ClientTestStrings.DB_SCHEME, true, ClientTestStrings.SCHEME,
            Messages.ClientDbschemeOpt, false));
    options.addOptionGroup(ogConnection);

    options.addOption(createOption(ClientTestStrings.DB_USER, true, ClientTestStrings.USER,
            Messages.ClientDbuserOpt, false));
    options.addOption(createOption(ClientTestStrings.DB_PW, true, ClientTestStrings.PASSWORD,
            Messages.ClientDbpwOpt, false));
    extendOptions(options, req);
    return options;
}