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.tolven.command.TolvenApplication.java

private CommandLine getCommandLine(String[] args) {
    Options cmdLineOptions = new Options();
    Option pluginOption = new Option(CMD_PLUGIN_OPTION, CMD_PLUGIN_OPTION, true, "\"plugin id\"");
    pluginOption.setRequired(true);/*from w w  w  .  j a v  a2s .c o m*/
    cmdLineOptions.addOption(pluginOption);
    OptionGroup optionGroup = new OptionGroup();
    Option runtimePluginExistsOption = new Option(CMD_IF_RUNTIME_EXISTS_OPTION, CMD_IF_RUNTIME_EXISTS_OPTION,
            false, "\"execute if runtime plugin exists\"");
    optionGroup.addOption(runtimePluginExistsOption);
    Option noopOption = new Option(CMD_NOOP_OPTION, CMD_NOOP_OPTION, false,
            "no op plugin starts the plugin framework as a test, but does nothing");
    optionGroup.addOption(noopOption);
    Option formatOption = new Option(CMD_FORMAT_OPTION, CMD_FORMAT_OPTION, false,
            "formatPluginsFile inputPlugins.xml outputPlugins.xml");
    formatOption.setArgs(2);
    optionGroup.addOption(formatOption);
    cmdLineOptions.addOptionGroup(optionGroup);
    try {
        GnuParser parser = new GnuParser();
        CommandLine commandLine = parser.parse(cmdLineOptions, args, true);
        return commandLine;
    } catch (ParseException ex) {
        HelpFormatter formatter = new HelpFormatter();
        formatter.printHelp(getClass().getName(), cmdLineOptions);
        throw new RuntimeException("Could not parse command line for: " + getClass().getName(), ex);
    }
}

From source file:org.tolven.developmentmgr.DevelopmentMgr.java

private Options getCommandOptions() {
    Options cmdLineOptions = new Options();
    OptionGroup optionGroup = new OptionGroup();
    optionGroup.setRequired(true);//from w ww.ja  v  a 2s  .  com
    Option devLibOption = new Option(CMD_LINE_DEVLIB_OPTION, CMD_LINE_DEVLIB_OPTION, false,
            "\"deploy development library\"");
    optionGroup.addOption(devLibOption);
    cmdLineOptions.addOptionGroup(optionGroup);
    return cmdLineOptions;
}

From source file:org.tolven.glassfishmgr.GlassFishMgrPlugin.java

private Options getCommandOptions() {
    Options cmdLineOptions = new Options();
    OptionGroup optionGroup = new OptionGroup();
    Option testAdminAppServerOption = new Option(CMD_LINE_TEST_ADMIN_APPSERVER_OPTION,
            CMD_LINE_TEST_ADMIN_APPSERVER_OPTION, false, "\"test admin to appserver connection\"");
    optionGroup.addOption(testAdminAppServerOption);
    Option guiOption = new Option(CMD_LINE_GUI_OPTION, CMD_LINE_GUI_OPTION, false,
            "\"start the glassfish manager gui\"");
    optionGroup.addOption(guiOption);//from  ww  w.j a  va  2 s . c  o  m
    optionGroup.setRequired(true);
    cmdLineOptions.addOptionGroup(optionGroup);
    return cmdLineOptions;
}

From source file:org.tolven.ldapmgr.LDAPMgrPlugin.java

private Options getCommandOptions() {
    Options cmdLineOptions = new Options();
    OptionGroup optionGroup = new OptionGroup();
    Option testRootDNLDAPOption = new Option(CMD_LINE_TEST_ROOTDN_LDAP_OPTION, CMD_LINE_TEST_ROOTDN_LDAP_OPTION,
            false, "\"test rootDN to LDAP connection\"");
    optionGroup.addOption(testRootDNLDAPOption);
    Option testAdminLDAPOption = new Option(CMD_LINE_TEST_ADMIN_LDAP_OPTION, CMD_LINE_TEST_ADMIN_LDAP_OPTION,
            false, "\"test admin to LDAP connection\"");
    optionGroup.addOption(testAdminLDAPOption);
    Option testAppServerLDAPOption = new Option(CMD_LINE_TEST_APPSERVER_LDAP_OPTION,
            CMD_LINE_TEST_APPSERVER_LDAP_OPTION, false, "\"simulate appserver to LDAP connection\"");
    optionGroup.addOption(testAppServerLDAPOption);
    Option updateSchemasOption = new Option(CMD_LINE_UPDATE_SCHEMAS_OPTION, CMD_LINE_UPDATE_SCHEMAS_OPTION,
            false, "\"update schemas\"");
    optionGroup.addOption(updateSchemasOption);
    Option guiOption = new Option(CMD_LINE_GUI_OPTION, CMD_LINE_GUI_OPTION, false,
            "\"start the LDAP manager gui\"");
    optionGroup.addOption(guiOption);//from w  w  w .  j  a v a  2s .  c  om
    optionGroup.setRequired(true);
    cmdLineOptions.addOptionGroup(optionGroup);
    return cmdLineOptions;
}

From source file:org.tolven.legacypostgresql.db.LegacyPostgresqlDBPlugin.java

private Options getCommandOptions() {
    Options cmdLineOptions = new Options();
    OptionGroup optionGroup = new OptionGroup();
    optionGroup.addOption(new Option(CMD_SCHEMAS, CMD_SCHEMAS, false, "\"schemas\""));
    optionGroup.addOption(new Option(CMD_INDEXES, CMD_INDEXES, false, "\"indexes\""));
    optionGroup.setRequired(true);/*w w w.j  ava  2s  . c o m*/
    cmdLineOptions.addOptionGroup(optionGroup);
    Option dbUrlOption = new Option(CMD_DBURL, CMD_DBURL, true, "\"dbUrl\"");
    dbUrlOption.setRequired(true);
    cmdLineOptions.addOption(dbUrlOption);
    Option driverClassOption = new Option(CMD_DRIVERCLASS, CMD_DRIVERCLASS, true, "\"driverClass\"");
    driverClassOption.setRequired(true);
    cmdLineOptions.addOption(driverClassOption);
    Option userOption = new Option(CMD_USER, CMD_USER, true, "\"user\"");
    userOption.setRequired(true);
    cmdLineOptions.addOption(userOption);
    Option passwordOption = new Option(CMD_PASSWORD, CMD_PASSWORD, true, "\"password\"");
    passwordOption.setRequired(true);
    cmdLineOptions.addOption(passwordOption);
    Option driverClasspathOption = new Option(CMD_DRIVERCLASSPATH, CMD_DRIVERCLASSPATH, true,
            "\"driverClasspath\"");
    cmdLineOptions.addOption(driverClasspathOption);
    return cmdLineOptions;
}

From source file:org.tolven.passwordrecovery.PasswordRecoveryPlugin.java

private Options getCommandOptions() {
    Options cmdLineOptions = new Options();
    OptionGroup optionGroup = new OptionGroup();
    Option dispalyOption = new Option(CMD_LINE_DISPLAY_OPTION, CMD_LINE_DISPLAY_OPTION, false,
            "\"display security questions from repositoryRuntime\"");
    optionGroup.addOption(dispalyOption);
    Option importOption = new Option(CMD_LINE_LOAD_OPTION, CMD_LINE_LOAD_OPTION, false,
            "\"load security questions from repositoryRuntime\"");
    optionGroup.addOption(importOption);
    Option addOption = new Option(CMD_LINE_ADD_OPTION, CMD_LINE_ADD_OPTION, true,
            "\"add a security question\"");
    optionGroup.addOption(addOption);/*from   w ww.  ja v  a  2s .c  o m*/
    Option changeOption = new Option(CMD_LINE_CHANGE_OPTION, CMD_LINE_CHANGE_OPTION, true,
            "\"change a security question\"");
    optionGroup.addOption(changeOption);
    Option removeOption = new Option(CMD_LINE_REMOVE_OPTION, CMD_LINE_REMOVE_OPTION, true,
            "\"remove a security question\"");
    optionGroup.addOption(removeOption);
    Option guiOption = new Option(CMD_LINE_GUI_OPTION, CMD_LINE_GUI_OPTION, false,
            "\"start the password recovery gui\"");
    optionGroup.addOption(guiOption);
    optionGroup.setRequired(true);
    cmdLineOptions.addOptionGroup(optionGroup);
    Option newValueOption = new Option(CMD_LINE_NEW_OPTION, CMD_LINE_NEW_OPTION, true,
            "\"supplied with -" + CMD_LINE_CHANGE_OPTION + " option\"");
    cmdLineOptions.addOption(newValueOption);
    return cmdLineOptions;
}

From source file:org.tolven.plugin.boot.TPFBoot.java

public static void main(String[] args) throws Exception {
    URL manifestURL = ClassLoader.getSystemResource("tolven-plugin.xml");
    TPF_VERSION = RepositoryMetadata.getVersion(manifestURL);
    System.setProperty(TPF_VERSION_PROPERTY, TPF_VERSION);
    Option confOption = new Option(CMD_LINE_CONF_OPTION, CMD_LINE_CONF_OPTION, true, "configuration directory");
    OptionGroup optionGroup = new OptionGroup();
    optionGroup.setRequired(true);// w  w  w  . j  av a  2s  . c om
    Option upgradeOption = new Option(CMD_LINE_GETPLUGINS_OPTION, CMD_LINE_GETPLUGINS_OPTION, false,
            "getPlugins from repositories");
    optionGroup.addOption(upgradeOption);
    Option pluginOption = new Option(CMD_LINE_PLUGIN_OPTION, CMD_LINE_PLUGIN_OPTION, true,
            "execute one or more plugins");
    optionGroup.addOption(pluginOption);
    Option genMetadataOption = new Option(CMD_LINE_GENMETADATA_OPTION, CMD_LINE_GENMETADATA_OPTION, true,
            "generate a repository metadata file");
    optionGroup.addOption(genMetadataOption);
    Option versionOption = new Option(CMD_LINE_VERSION_OPTION, CMD_LINE_VERSION_OPTION, false, "TPF Version");
    optionGroup.addOption(versionOption);
    Option repositorySnapshotOption = new Option(CMD_LINE_REPOSITORYSNAPSHOT_OPTION,
            CMD_LINE_REPOSITORYSNAPSHOT_OPTION, false, "create snapshot of repositories");
    optionGroup.addOption(repositorySnapshotOption);
    Options cmdLineOptions = new Options();
    cmdLineOptions.addOption(confOption);
    cmdLineOptions.addOptionGroup(optionGroup);
    try {
        GnuParser parser = new GnuParser();
        CommandLine commandLine = parser.parse(cmdLineOptions, args, true);
        String configDirname = getCommandLineConfigDir(commandLine);
        File configDir = new File(configDirname);
        pluginsWrapper = new ConfigPluginsWrapper();
        pluginsWrapper.loadConfigDir(configDir);
        Logger.getLogger(TPFBoot.class.getName()).info("TPF Version: " + TPF_VERSION);
        Logger.getLogger(TPFBoot.class.getName()).info("Loaded configDir " + configDir.getPath());
        boolean upgrade = commandLine.hasOption(CMD_LINE_GETPLUGINS_OPTION);
        String plugins = commandLine.getOptionValue(CMD_LINE_PLUGIN_OPTION);
        boolean genMetadata = commandLine.hasOption(CMD_LINE_GENMETADATA_OPTION);
        boolean versionRequest = commandLine.hasOption(CMD_LINE_VERSION_OPTION);
        boolean repositorySnapshot = commandLine.hasOption(CMD_LINE_REPOSITORYSNAPSHOT_OPTION);
        if (upgrade) {
            //RepositoryUpgrade.main(commandLine.getArgs()); //CLI seems to only recognize the first letter of an option?
            StringBuffer buff = new StringBuffer();
            for (String arg : args) {
                if (!("-" + CMD_LINE_GETPLUGINS_OPTION).equals(arg)) {
                    buff.append(arg + ",");
                }
            }
            RepositoryUpgrade.main(buff.toString().split(","));
        } else if (genMetadata) {
            StringBuffer buff = new StringBuffer();
            for (String arg : args) {
                if (!("-" + CMD_LINE_GENMETADATA_OPTION).equals(arg)) {
                    buff.append(arg + ",");
                }
            }
            RepositoryMetadata.main(buff.toString().split(","));
        } else if (versionRequest) {
            System.out.println("\nTPF Version: " + TPF_VERSION);
        } else if (repositorySnapshot) {
            StringBuffer buff = new StringBuffer();
            for (String arg : args) {
                if (!("-" + CMD_LINE_REPOSITORYSNAPSHOT_OPTION).equals(arg)) {
                    buff.append(arg + ",");
                }
            }
            RepositorySnapshot.main(buff.toString().split(","));
        } else if (plugins != null) {
            addBootRepositoryRuntime(pluginsWrapper, configDir);
            Boot.main(args);
        }
    } catch (ParseException ex) {
        HelpFormatter formatter = new HelpFormatter();
        formatter.printHelp(TPFBoot.class.getName(), cmdLineOptions);
        throw new RuntimeException("Could not parse command line for: " + TPFBoot.class.getName(), ex);
    }
}

From source file:org.tolven.plugin.repository.TolvenManifestParser.java

private static Options getCommandOptions() {
    Options cmdLineOptions = new Options();
    Option urlOption = new Option(CMD_LINE_URL_OPTION, CMD_LINE_URL_OPTION, true, "manifest url");
    urlOption.setRequired(true);/* ww w. j a  v  a2s  .com*/
    cmdLineOptions.addOption(urlOption);
    OptionGroup optionGroup = new OptionGroup();
    Option pluginIdOption = new Option(CMD_LINE_PLUGIN_ID_OPTION, CMD_LINE_PLUGIN_ID_OPTION, false,
            "manifest plugin id");
    optionGroup.addOption(pluginIdOption);
    Option versionOption = new Option(CMD_LINE_VERSION_OPTION, CMD_LINE_VERSION_OPTION, false,
            "manifest version");
    optionGroup.addOption(versionOption);
    cmdLineOptions.addOptionGroup(optionGroup);
    return cmdLineOptions;
}

From source file:org.tolven.scheduler.SchedulerPlugin.java

private Options getCommandOptions() {
    Options cmdLineOptions = new Options();
    OptionGroup optionGroup = new OptionGroup();
    Option startOption = new Option(CMD_LINE_START_OPTION, CMD_LINE_START_OPTION, true,
            "\"-start schedulerId intervalDuration(ms)\"");
    startOption.setArgs(2);/*ww  w . j  a v a  2s .  com*/
    optionGroup.addOption(startOption);
    Option stopOption = new Option(CMD_LINE_STOP_OPTION, CMD_LINE_STOP_OPTION, true, "\"-stop schedulerId\"");
    optionGroup.addOption(stopOption);
    Option statusOption = new Option(CMD_LINE_STATUS_OPTION, CMD_LINE_STATUS_OPTION, true,
            "\"-status schedulerId\"");
    optionGroup.addOption(statusOption);
    optionGroup.setRequired(true);
    cmdLineOptions.addOptionGroup(optionGroup);
    return cmdLineOptions;
}

From source file:org.tuxedoberries.transformo.app.frontend.CommandLineLauncher.java

public static Options getOptions() {
    Options options = new Options();
    options.addOption("help", "Print this message.");

    // Generation
    OptionGroup genGroup = new OptionGroup();
    Option tablesOption = new Option("tables", "Generate filled templates by using each table information.");
    Option fieldsOption = new Option("fields", "Generate filled templates by using each field information.");
    Option dataOption = new Option("data", "Generate data using a specific format.");
    genGroup.addOption(tablesOption);
    genGroup.addOption(fieldsOption);/*  w  w w  . j  a  v  a 2s .co  m*/
    genGroup.addOption(dataOption);
    genGroup.setRequired(true);
    options.addOptionGroup(genGroup);

    // Database
    Option database = new Option("d", "Use the given Database. Just XLSX format Supported for now.");
    database.setArgs(1);
    database.setArgName("file");
    database.setRequired(true);
    options.addOption(database);

    // Target Folder
    Option targetFolder = new Option("tfolder", "Target folder where to save the result.");
    targetFolder.setArgs(1);
    targetFolder.setArgName("folder");
    options.addOption(targetFolder);

    // Target File
    Option targetFile = new Option("tfile",
            "Target file name expresion. For -tables or -fields can use $file_name$, $field_name$ and/or $field_type$ and any modifiers.");
    targetFile.setArgs(1);
    targetFile.setArgName("file");
    options.addOption(targetFile);

    // Target Format
    OptionGroup formatGroup = new OptionGroup();
    Option jsonOption = new Option("json", "[-data only] Generate data using JSON format.");
    Option shortJsonOption = new Option("sjson",
            "[-data only] Generate data using Short field name JSON format.");
    formatGroup.addOption(jsonOption);
    formatGroup.addOption(shortJsonOption);
    options.addOptionGroup(formatGroup);

    // Template Folder
    Option templateFolder = new Option("sfolder",
            "[-tables or -fields only] Template source folder. Where to locate all different templates to use.");
    templateFolder.setArgs(1);
    templateFolder.setArgName("folder");
    options.addOption(templateFolder);

    // Template File
    Option templateFile = new Option("sfile",
            "[-tables or -fields only] Template index source file. The point of origin for the templates.");
    templateFile.setArgs(1);
    templateFile.setArgName("file");
    options.addOption(templateFile);

    return options;
}