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

    All Methods Instance Methods Concrete Methods
    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 Detail

    - #### CLIBuilder

          public CLIBuilder()

  - ### Method Detail

    - #### 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.