CommandLine.RunAll (picocli 4.6.3 API)

picocli

## Class CommandLine.RunAll

- java.lang.Object
- - picocli.CommandLine.AbstractHandler<R,CommandLine.AbstractParseResultHandler<R>>
  - - picocli.CommandLine.AbstractParseResultHandler<List<Object>>
    - - picocli.CommandLine.RunAll

- All Implemented Interfaces:
    CommandLine.IExecutionStrategy, CommandLine.IParseResultHandler, CommandLine.IParseResultHandler2<List<Object>>
  Enclosing class:
    CommandLine

      public static class CommandLine.RunAll
      extends CommandLine.AbstractParseResultHandler<List<Object>>
      implements CommandLine.IParseResultHandler

  Command line execution strategy that prints help if requested, and otherwise executes the top-level command and all subcommands as `Runnable`, `Callable` or `Method`. For use by the `execute` method.
  Since:
    2.0

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `RunAll()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `execute(CommandLine.ParseResult parseResult)` "Executes" the user input and returns an exit code.
    `protected List<CommandLine.IExitCodeGenerator>` | `extractExitCodeGenerators(CommandLine.ParseResult parseResult)`
    `protected List<Object>` | `handle(CommandLine.ParseResult parseResult)` Executes the top-level command and all subcommands as `Runnable` or `Callable`.
    `List<Object>` | `handleParseResult(List<CommandLine> parsedCommands, PrintStream out, CommandLine.Help.Ansi ansi)` Prints help if requested, and otherwise executes the top-level command and all subcommands as `Runnable`, `Callable` or `Method`.
    `protected CommandLine.RunAll` | `self()` Returns `this` to allow method chaining when calling the setters for a fluent API.

    - ### Methods inherited from class picocli.CommandLine.AbstractParseResultHandler

      `handleParseResult`

    - ### Methods inherited from class picocli.CommandLine.AbstractHandler

      `andExit, ansi, colorScheme, err, exit, exitCode, hasExitCode, out, returnResultOrExit, throwOrExit, useAnsi, useErr, useOut`

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

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

- - ### Constructor Detail

    - #### RunAll

          public RunAll()

  - ### Method Detail

    - #### execute

          public int execute(CommandLine.ParseResult parseResult)
                      throws CommandLine.ExecutionException

      "Executes" the user input and returns an exit code. Execution often means invoking a method on the selected CommandSpec's user object, and making the return value of that invocation available via `setExecutionResult`.
      Specified by:
        `execute` in interface `CommandLine.IExecutionStrategy`
      Overrides:
        `execute` in class `CommandLine.AbstractParseResultHandler<List<Object>>`
      Parameters:
        `parseResult` - the parse result from which to select one or more `CommandSpec` instances to execute.
      Returns:
        an exit code
      Throws:
        `CommandLine.ExecutionException` - if any problem occurred while executing the command. Any exceptions (other than ParameterException) should be wrapped in a ExecutionException and not thrown as is.

    - #### handleParseResult

          public List<Object> handleParseResult(List<CommandLine> parsedCommands,
                                                PrintStream out,
                                                CommandLine.Help.Ansi ansi)

      Prints help if requested, and otherwise executes the top-level command and all subcommands as `Runnable`, `Callable` or `Method`. Finally, either a list of result objects is returned, or the JVM is terminated if an exit code was set. If any of the `CommandLine` commands does not implement either `Runnable` or `Callable`, an `ExecutionException` is thrown detailing the problem and capturing the offending `CommandLine` object.
      Specified by:
        `handleParseResult` in interface `CommandLine.IParseResultHandler`
      Parameters:
        `parsedCommands` - the `CommandLine` objects that resulted from successfully parsing the command line arguments
        `out` - the `PrintStream` to print help to if requested
        `ansi` - for printing help messages using ANSI styles and colors
      Returns:
        an empty list if help was requested, or a list containing the result of executing all commands: the return values from calling the `Callable` commands, `null` elements for commands that implement `Runnable`
      Throws:
        `CommandLine.ParameterException` - if the `HelpCommand` was invoked for an unknown subcommand. Any `ParameterExceptions` thrown from this method are treated as if this exception was thrown during parsing and passed to the `CommandLine.IExceptionHandler`
        `CommandLine.ExecutionException` - if a problem occurred while processing the parse results; use `CommandLine.ExecutionException.getCommandLine()` to get the command or subcommand where processing failed

    - #### handle

          protected List<Object> handle(CommandLine.ParseResult parseResult)
                                 throws CommandLine.ExecutionException

      Executes the top-level command and all subcommands as `Runnable` or `Callable`. If any of the `CommandLine` commands does not implement either `Runnable` or `Callable` and is not a `Method`, an `ExecutionException` is thrown detailing the problem and capturing the offending `CommandLine` object.
      Specified by:
        `handle` in class `CommandLine.AbstractParseResultHandler<List<Object>>`
      Parameters:
        `parseResult` - the `ParseResult` that resulted from successfully parsing the command line arguments
      Returns:
        an empty list if help was requested, or a list containing the result of executing all commands: the return values from calling the `Callable` commands, `null` elements for commands that implement `Runnable`
      Throws:
        `CommandLine.ExecutionException` - if a problem occurred while processing the parse results; use `CommandLine.ExecutionException.getCommandLine()` to get the command or subcommand where processing failed
      Since:
        3.0

    - #### extractExitCodeGenerators

          protected List<CommandLine.IExitCodeGenerator> extractExitCodeGenerators(CommandLine.ParseResult parseResult)

      Overrides:
        `extractExitCodeGenerators` in class `CommandLine.AbstractParseResultHandler<List<Object>>`

    - #### self

          protected CommandLine.RunAll self()

      Description copied from class: `CommandLine.AbstractHandler`
      Returns `this` to allow method chaining when calling the setters for a fluent API.
      Specified by:
        `self` in class `CommandLine.AbstractHandler<List<Object>,CommandLine.AbstractParseResultHandler<List<Object>>>`