Package org.apache.storm.command

# Class CLI.CLIBuilder

java.lang.Object
org.apache.storm.command.CLI.CLIBuilder

Enclosing class:
  CLI

public static class CLI.CLIBuilder extends Object

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `CLIBuilder()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `CLI.CLIBuilder`
  `arg(String name)`
  Add a named argument.
  `CLI.CLIBuilder`
  `arg(String name, CLI.Assoc assoc)`
  Add a named argument.
  `CLI.CLIBuilder`
  `arg(String name, CLI.Parse parse)`
  Add a named argument.
  `CLI.CLIBuilder`
  `arg(String name, CLI.Parse parse, CLI.Assoc assoc)`
  Add a named argument.
  `CLI.CLIBuilder`
  `boolOpt(String shortName, String longName)`
  Add a boolean option that enables something.
  `CLI.CLIBuilder`
  `opt(String shortName, String longName, Object defaultValue)`
  Add an option to be parsed.
  `CLI.CLIBuilder`
  `opt(String shortName, String longName, Object defaultValue, CLI.Parse parse)`
  Add an option to be parsed.
  `CLI.CLIBuilder`
  `opt(String shortName, String longName, Object defaultValue, CLI.Parse parse, CLI.Assoc assoc)`
  Add an option to be parsed.
  `CLI.CLIBuilder`
  `optionalArg(String name)`
  Add a named argument that is optional.
  `CLI.CLIBuilder`
  `optionalArg(String name, CLI.Assoc assoc)`
  Add a named argument that is optional.
  `CLI.CLIBuilder`
  `optionalArg(String name, CLI.Parse parse)`
  Add a named argument that is optional.
  `CLI.CLIBuilder`
  `optionalArg(String name, CLI.Parse parse, CLI.Assoc assoc)`
  Add a named argument that is optional.
  `Map<String,Object>`
  `parse(String... rawArgs)`
  Parse the command line arguments.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### CLIBuilder

    public CLIBuilder()

- ## Method Details

  - ### opt

    public CLI.CLIBuilder opt(String shortName, String longName, Object defaultValue)
    Add an option to be parsed.
    Parameters:
      `shortName` - the short single character name of the option (no `-` character proceeds it).
      `longName` - the multi character name of the option (no `--` characters proceed it).
      `defaultValue` - the value that will be returned of the command if none is given. null if none is given.
    Returns:
      a builder to be used to continue creating the command line.

  - ### opt

    public CLI.CLIBuilder opt(String shortName, String longName, Object defaultValue, CLI.Parse parse)
    Add an option to be parsed.
    Parameters:
      `shortName` - the short single character name of the option (no `-` character proceeds it).
      `longName` - the multi character name of the option (no `--` characters proceed it).
      `defaultValue` - the value that will be returned of the command if none is given. null if none is given.
      `parse` - an optional function to transform the string to something else. If null a NOOP is used.
    Returns:
      a builder to be used to continue creating the command line.

  - ### opt

    public CLI.CLIBuilder opt(String shortName, String longName, Object defaultValue, CLI.Parse parse, CLI.Assoc assoc)
    Add an option to be parsed.
    Parameters:
      `shortName` - the short single character name of the option (no `-` character proceeds it).
      `longName` - the multi character name of the option (no `--` characters proceed it).
      `defaultValue` - the value that will be returned of the command if none is given. null if none is given.
      `parse` - an optional function to transform the string to something else. If null a NOOP is used.
      `assoc` - an association command to decide what to do if the option appears multiple times. If null LAST_WINS is used.
    Returns:
      a builder to be used to continue creating the command line.

  - ### boolOpt

    public CLI.CLIBuilder boolOpt(String shortName, String longName)
    Add a boolean option that enables something.
    Parameters:
      `shortName` - the short single character name of the option (no `-` character proceeds it).
      `longName` - the multi character name of the option (no `--` characters proceed it).
    Returns:
      a builder to be used to continue creating the command line.

  - ### arg

    public CLI.CLIBuilder arg(String name)
    Add a named argument.
    Parameters:
      `name` - the name of the argument.
    Returns:
      a builder to be used to continue creating the command line.

  - ### arg

    public CLI.CLIBuilder arg(String name, CLI.Assoc assoc)
    Add a named argument.
    Parameters:
      `name` - the name of the argument.
      `assoc` - an association command to decide what to do if the argument appears multiple times. If null INTO_LIST is used.
    Returns:
      a builder to be used to continue creating the command line.

  - ### arg

    public CLI.CLIBuilder arg(String name, CLI.Parse parse)
    Add a named argument.
    Parameters:
      `name` - the name of the argument.
      `parse` - an optional function to transform the string to something else. If null a NOOP is used.
    Returns:
      a builder to be used to continue creating the command line.

  - ### arg

    public CLI.CLIBuilder arg(String name, CLI.Parse parse, CLI.Assoc assoc)
    Add a named argument.
    Parameters:
      `name` - the name of the argument.
      `parse` - an optional function to transform the string to something else. If null a NOOP is used.
      `assoc` - an association command to decide what to do if the argument appears multiple times. If null INTO_LIST is used.
    Returns:
      a builder to be used to continue creating the command line.

  - ### optionalArg

    public CLI.CLIBuilder optionalArg(String name)
    Add a named argument that is optional.
    Parameters:
      `name` - the name of the argument.
    Returns:
      a builder to be used to continue creating the command line.

  - ### optionalArg

    public CLI.CLIBuilder optionalArg(String name, CLI.Assoc assoc)
    Add a named argument that is optional.
    Parameters:
      `name` - the name of the argument.
      `assoc` - an association command to decide what to do if the argument appears multiple times. If null INTO_LIST is used.
    Returns:
      a builder to be used to continue creating the command line.

  - ### optionalArg

    public CLI.CLIBuilder optionalArg(String name, CLI.Parse parse)
    Add a named argument that is optional.
    Parameters:
      `name` - the name of the argument.
      `parse` - an optional function to transform the string to something else. If null a NOOP is used.
    Returns:
      a builder to be used to continue creating the command line.

  - ### optionalArg

    public CLI.CLIBuilder optionalArg(String name, CLI.Parse parse, CLI.Assoc assoc)
    Add a named argument that is optional.
    Parameters:
      `name` - the name of the argument.
      `parse` - an optional function to transform the string to something else. If null a NOOP is used.
      `assoc` - an association command to decide what to do if the argument appears multiple times. If null INTO_LIST is used.
    Returns:
      a builder to be used to continue creating the command line.

  - ### parse

    public Map<String,Object> parse(String... rawArgs) throws Exception
    Parse the command line arguments.
    Parameters:
      `rawArgs` - the string arguments to be parsed.
    Returns:
      The parsed command line. opts will be stored under the short argument name. args will be stored under the argument name, unless no arguments are configured, and then they will be stored under "ARGS". The last argument configured is greedy and is used to process all remaining command line arguments.
    Throws:
      `Exception` - on any error.