Example usage for org.apache.commons.cli Option getArgName

List of usage examples for org.apache.commons.cli Option getArgName

Introduction

In this page you can find the example usage for org.apache.commons.cli Option getArgName.

Prototype

public String getArgName() 

Source Link

Document

Gets the display name for the argument value.

Usage

From source file:com.buildml.main.BMLAdminMain.java

/**
 * Display a set of options (as defined by the Options class). This methods is used
 * in displaying the help text.// w w  w .j a va2s.co  m
 * @param opts A set of command line options, as defined by the Options class.
 */
@SuppressWarnings("unchecked")
private void displayOptions(Options opts) {

    /* obtain a list of all the options */
    Collection<Option> optList = opts.getOptions();

    /* if there are no options for this command ... */
    if (optList.size() == 0) {
        System.err.println("    No options available.");
    }

    /* 
     * Else, we have options to display. Show them in a nicely tabulated
     * format, with the short option name (e.g. -p) and the long option name
     * (--show-pkgs) first, followed by a text description of the option.
     */
    else {
        for (Iterator<Option> iterator = optList.iterator(); iterator.hasNext();) {
            Option thisOpt = iterator.next();
            String shortOpt = thisOpt.getOpt();
            String longOpt = thisOpt.getLongOpt();
            String line = "    ";
            if (shortOpt != null) {
                line += "-" + shortOpt;
            } else {
                line += "  ";
            }
            if (shortOpt != null && longOpt != null) {
                line += " | ";
            } else {
                line += "   ";
            }
            if (longOpt != null) {
                line += "--" + thisOpt.getLongOpt();
            }
            if (thisOpt.hasArg()) {
                line += " <" + thisOpt.getArgName() + ">";
            }
            formattedDisplayLine(line, thisOpt.getDescription());
        }
    }
}

From source file:nl.toolforge.karma.console.CommandRenderer.java

private static StringBuffer printCommand(CommandDescriptor descriptor, Option[] options, boolean showOptions,
        boolean showHelp) {

    StringBuffer buffer = new StringBuffer();
    String commandNameAlias = descriptor.getName() + " (" + descriptor.getAlias() + ")";

    buffer.append(commandNameAlias).append(StringUtils.repeat(" ", COMMAND_FILL - commandNameAlias.length()));
    if (!showOptions) {
        buffer.append(descriptor.getDescription());
    }/*from   w ww  .j a  va2s  .co  m*/
    buffer.append("\n");

    if (showOptions) {
        for (int j = 0; j < options.length; j++) {

            Option o = options[j];

            String leftPadding = "   ";

            buffer.append(leftPadding).append("-" + o.getOpt()).append(", --" + o.getLongOpt());

            String args = "";
            if (o.hasArg()) {
                args = " <".concat(o.getArgName()).concat(">");
            }

            // todo when the commands are described with too much of text, then FILL will run out of count ...
            //
            buffer.append(args.concat(StringUtils.repeat(" ", OPTION_FILL - (o.getLongOpt() + args).length())));
            buffer.append(leftPadding);
            if (!o.isRequired()) {
                buffer.append("(Optional) ");
            }
            buffer.append(o.getDescription());
            buffer.append("\n");
        }
    }

    if (showHelp) {
        buffer.append("\n");

        String trimmed = NiftyStringUtils.deleteWhiteSpaceExceptOne(descriptor.getHelp());
        String[] split = NiftyStringUtils.split(trimmed, " ", 120);
        String joined = StringUtils.join(split, "\n");

        buffer.append(joined);
        buffer.append("\n");
    }

    return buffer;
}

From source file:org.apache.geronimo.cli.PrintHelper.java

public void printUsage(PrintWriter pw, int width, String app, Options options) {
    // create a list for processed option groups
    ArrayList list = new ArrayList();

    StringBuilder optionsBuff = new StringBuilder();

    // temp variable
    Option option;

    // iterate over the options
    for (Iterator i = options.getOptions().iterator(); i.hasNext();) {
        // get the next Option
        option = (Option) i.next();

        // check if the option is part of an OptionGroup
        OptionGroup group = options.getOptionGroup(option);

        // if the option is part of a group and the group has not already
        // been processed
        if (group != null && !list.contains(group)) {

            // add the group to the processed list
            list.add(group);/*  w  ww  . j  a va  2 s.  c  o  m*/

            // get the names of the options from the OptionGroup
            Collection names = group.getNames();

            optionsBuff.append("[");

            // for each option in the OptionGroup
            for (Iterator iter = names.iterator(); iter.hasNext();) {
                optionsBuff.append(iter.next());
                if (iter.hasNext()) {
                    optionsBuff.append("|");
                }
            }
            optionsBuff.append("] ");
        } else if (group == null) {
            // if the Option is not part of an OptionGroup
            // if the Option is not a required option
            if (!option.isRequired()) {
                optionsBuff.append("[");
            }

            if (!" ".equals(option.getOpt())) {
                optionsBuff.append("-").append(option.getOpt());
            } else {
                optionsBuff.append("--").append(option.getLongOpt());
            }

            if (option.hasArg()) {
                optionsBuff.append(" ");
            }

            // if the Option has a value
            if (option.hasArg()) {
                optionsBuff.append(option.getArgName());
            }

            // if the Option is not a required option
            if (!option.isRequired()) {
                optionsBuff.append("]");
            }
            optionsBuff.append(" ");
        }
    }

    app = app.replace("$options", optionsBuff.toString());

    // call printWrapped
    printWrapped(pw, width, app.indexOf(' ') + 1, app);
}

From source file:org.apache.geronimo.cli.PrintHelper.java

protected StringBuilder renderOptions(StringBuilder sb, int width, Options options, int leftPad, int descPad,
        boolean displayDesc) {
    final String lpad = createPadding(leftPad);
    final String dpad = createPadding(descPad);

    //first create list containing only <lpad>-a,--aaa where -a is opt and --aaa is
    //long opt; in parallel look for the longest opt string
    //this list will be then used to sort options ascending
    int max = 0;/*from www. j a  v  a  2s.  c o  m*/
    StringBuilder optBuf;
    List prefixList = new ArrayList();
    Option option;
    List optList = new ArrayList(options.getOptions());
    Collections.sort(optList, new StringBuilderComparator());
    for (Iterator i = optList.iterator(); i.hasNext();) {
        option = (Option) i.next();
        optBuf = new StringBuilder(8);

        if (option.getOpt().equals(" ")) {
            optBuf.append(lpad).append("   " + defaultLongOptPrefix).append(option.getLongOpt());
        } else {
            optBuf.append(lpad).append(defaultOptPrefix).append(option.getOpt());
            if (option.hasLongOpt()) {
                optBuf.append(',').append(defaultLongOptPrefix).append(option.getLongOpt());
            }

        }

        if (option.hasArg()) {
            if (option.hasArgName()) {
                optBuf.append(" <").append(option.getArgName()).append('>');
            } else {
                optBuf.append(' ');
            }
        }

        prefixList.add(optBuf);
        max = optBuf.length() > max ? optBuf.length() : max;
    }
    int x = 0;
    for (Iterator i = optList.iterator(); i.hasNext();) {
        option = (Option) i.next();
        optBuf = new StringBuilder(prefixList.get(x++).toString());

        if (optBuf.length() < max) {
            optBuf.append(createPadding(max - optBuf.length()));
        }
        optBuf.append(dpad);

        if (displayDesc) {
            optBuf.append(option.getDescription());
        }
        int nextLineTabStop = max + descPad;
        renderWrappedText(sb, width, nextLineTabStop, optBuf.toString());
        if (i.hasNext()) {
            sb.append(defaultNewLine);
            if (displayDesc) {
                sb.append(defaultNewLine);
            }
        }
    }

    return sb;
}

From source file:org.apache.hadoop.hbase.regionserver.DataBlockEncodingTool.java

private static void printUsage(Options options) {
    System.err.println("Usage:");
    System.err.println(String.format("./hbase %s <options>", DataBlockEncodingTool.class.getName()));
    System.err.println("Options:");
    for (Object it : options.getOptions()) {
        Option opt = (Option) it;
        if (opt.hasArg()) {
            System.err/*from w  w  w .j  ava  2s. c  o  m*/
                    .println(String.format("-%s %s: %s", opt.getOpt(), opt.getArgName(), opt.getDescription()));
        } else {
            System.err.println(String.format("-%s: %s", opt.getOpt(), opt.getDescription()));
        }
    }
}

From source file:org.apache.helix.task.TaskDriver.java

/** Ensures options argument counts are correct */
private static boolean checkOptionArgsNumber(Option[] options) {
    for (Option option : options) {
        int argNb = option.getArgs();
        String[] args = option.getValues();
        if (argNb == 0) {
            if (args != null && args.length > 0) {
                System.err.println(option.getArgName() + " shall have " + argNb + " arguments (was "
                        + Arrays.toString(args) + ")");
                return false;
            }// ww  w. ja  v a2  s. c o m
        } else {
            if (args == null || args.length != argNb) {
                System.err.println(option.getArgName() + " shall have " + argNb + " arguments (was "
                        + Arrays.toString(args) + ")");
                return false;
            }
        }
    }
    return true;
}

From source file:org.apache.helix.tools.JmxDumper.java

private static boolean checkOptionArgsNumber(Option[] options) {
    for (Option option : options) {
        int argNb = option.getArgs();
        String[] args = option.getValues();
        if (argNb == 0) {
            if (args != null && args.length > 0) {
                System.err.println(option.getArgName() + " shall have " + argNb + " arguments (was "
                        + Arrays.toString(args) + ")");
                return false;
            }/* ww w.j av  a  2 s  .co m*/
        } else {
            if (args == null || args.length != argNb) {
                System.err.println(option.getArgName() + " shall have " + argNb + " arguments (was "
                        + Arrays.toString(args) + ")");
                return false;
            }
        }
    }
    return true;
}

From source file:org.apache.maven.cli.CLIManagerDocumentationTest.java

public String getOptionsAsHtml() {
    StringBuilder sb = new StringBuilder(512);
    boolean a = true;
    sb.append(/*from w  ww . java 2  s.co  m*/
            "<table border='1' class='zebra-striped'><tr class='a'><th><b>Options</b></th><th><b>Description</b></th></tr>");
    for (Option option : new CLIManagerExtension().getOptions()) {
        a = !a;
        sb.append("<tr class='").append(a ? 'a' : 'b').append("'><td><code>-<a name='");
        sb.append(option.getOpt());
        sb.append("'>");
        sb.append(option.getOpt());
        sb.append("</a>,--<a name='");
        sb.append(option.getLongOpt());
        sb.append("'>");
        sb.append(option.getLongOpt());
        sb.append("</a>");
        if (option.hasArg()) {
            if (option.hasArgName()) {
                sb.append(" &lt;").append(option.getArgName()).append("&gt;");
            } else {
                sb.append(' ');
            }
        }
        sb.append("</code></td><td>");
        sb.append(option.getDescription());
        sb.append("</td></tr>");
        sb.append(LS);
    }
    sb.append("</table>");
    return sb.toString();
}

From source file:org.apache.maven.cli.CLIManagerTest.java

public String getOptionsAsHtml() {
    StringBuilder sb = new StringBuilder();
    boolean a = true;
    sb.append(/*from w  ww.j  a  v  a  2s.  c  o m*/
            "<table border='1' class='zebra-striped'><tr class='a'><th><b>Options</b></th><th><b>Description</b></th></tr>");
    for (Option option : new CLIManagerExtension().getOptions()) {
        a = !a;
        sb.append("<tr class='").append(a ? 'a' : 'b').append("'><td><code>-<a name='");
        sb.append(option.getOpt());
        sb.append("'>");
        sb.append(option.getOpt());
        sb.append("</a>,--<a name='");
        sb.append(option.getLongOpt());
        sb.append("'>");
        sb.append(option.getLongOpt());
        sb.append("</a>");
        if (option.hasArg()) {
            if (option.hasArgName()) {
                sb.append(" &lt;").append(option.getArgName()).append("&gt;");
            } else {
                sb.append(' ');
            }
        }
        sb.append("</code></td><td>");
        sb.append(option.getDescription());
        sb.append("</td></tr>");
        sb.append(LS);
    }
    sb.append("</table>");
    return sb.toString();
}

From source file:org.apache.maven.index.cli.NexusIndexerCliTest.java

public String getOptionsAsHtml() {
    @SuppressWarnings("unchecked")
    List<Option> optList = new ArrayList<Option>(new NexusIndexerCli().buildDefaultCliOptions().getOptions());
    Collections.sort(optList, new OptionComparator());

    StringBuilder sb = new StringBuilder();
    boolean a = true;
    sb.append(/*from  w  w  w.j  a va  2s.co m*/
            "<table border='1' class='zebra-striped'><tr class='a'><th><b>Options</b></th><th><b>Description</b></th></tr>");
    for (Option option : optList) {
        a = !a;
        sb.append("<tr class='").append(a ? 'a' : 'b').append("'><td><code>-<a name='");
        sb.append(option.getOpt());
        sb.append("'>");
        sb.append(option.getOpt());
        sb.append("</a>,--<a name='");
        sb.append(option.getLongOpt());
        sb.append("'>");
        sb.append(option.getLongOpt());
        sb.append("</a>");
        if (option.hasArg()) {
            if (option.hasArgName()) {
                sb.append(" &lt;").append(option.getArgName()).append("&gt;");
            } else {
                sb.append(' ');
            }
        }
        sb.append("</code></td><td>");
        sb.append(option.getDescription());
        sb.append("</td></tr>");
        sb.append(LS);
    }
    sb.append("</table>");
    return sb.toString();
}