Class CommandLine.RunFirst
- java.lang.Object
-
- org.apache.logging.log4j.core.tools.picocli.CommandLine.RunFirst
-
- All Implemented Interfaces:
CommandLine.IParseResultHandler
- Enclosing class:
- CommandLine
public static class CommandLine.RunFirst extends Object implements CommandLine.IParseResultHandler
Command line parse result handler that prints help if requested, and otherwise executes the top-levelRunnable
orCallable
command. For use in theparseWithHandler
methods.From picocli v2.0,
RunFirst
is used to implement therun
andcall
convenience methods.- Since:
- 2.0
-
-
Constructor Summary
Constructors Constructor Description RunFirst()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<Object>
handleParseResult(List<CommandLine> parsedCommands, PrintStream out, CommandLine.Help.Ansi ansi)
Prints help if requested, and otherwise executes the top-levelRunnable
orCallable
command.
-
-
-
Method Detail
-
handleParseResult
public List<Object> handleParseResult(List<CommandLine> parsedCommands, PrintStream out, CommandLine.Help.Ansi ansi)
Prints help if requested, and otherwise executes the top-levelRunnable
orCallable
command. If the top-level command does not implement eitherRunnable
orCallable
, aExecutionException
is thrown detailing the problem and capturing the offendingCommandLine
object.- Specified by:
handleParseResult
in interfaceCommandLine.IParseResultHandler
- Parameters:
parsedCommands
- theCommandLine
objects that resulted from successfully parsing the command line argumentsout
- thePrintStream
to print help to if requestedansi
- for printing help messages using ANSI styles and colors- Returns:
- an empty list if help was requested, or a list containing a single element: the result of calling the
Callable
, or anull
element if the top-level command was aRunnable
- Throws:
CommandLine.ExecutionException
- if a problem occurred while processing the parse results; useCommandLine.ExecutionException.getCommandLine()
to get the command or subcommand where processing failed
-
-