# Uses of Package
picocli

- Packages that use picocli
  Package | Description
  --- | ---
  com.hazelcast.jet.server | Contains Java program entry points that will start a Jet server instance, submit jobs to a Jet cluster, etc.
  picocli | Provides classes and interfaces for the main picocli command line parsing and `autocompletion` functionality.
  picocli.groovy | Provides classes and annotations to give Groovy scripts convenient access to picocli functionality.

- Classes in picocli used by com.hazelcast.jet.server
  Class and Description
  CommandLine.Command Annotate your class with `@Command` when you want more control over the format of the generated help message.
  CommandLine.IVersionProvider Provides version information for a command.
  CommandLine.Mixin Fields annotated with `@Mixin` are "expanded" into the current command: `@Option` and `@Parameters` in the mixin class are added to the options and positional parameters of this command.
  CommandLine.Option Annotate fields in your class with `@Option` and picocli will initialize these fields when matching arguments are specified on the command line.
  CommandLine.Parameters Fields annotated with `@Parameters` will be initialized with positional parameters.

- Classes in picocli used by picocli
  Class and Description
  CommandLine CommandLine interpreter that uses reflection to initialize an annotated domain object with values obtained from the command line arguments.
  CommandLine.AbstractHandler Abstract superclass for `CommandLine.IParseResultHandler2` and `CommandLine.IExceptionHandler2` implementations.
  CommandLine.AbstractParseResultHandler Command line parse result handler that returns a value.
  CommandLine.Command Annotate your class with `@Command` when you want more control over the format of the generated help message.
  CommandLine.DefaultExceptionHandler Default exception handler that handles invalid user input by printing the exception message, followed by the usage message for the command or subcommand whose input was invalid.
  CommandLine.ExecutionException Exception indicating a problem while invoking a command or subcommand.
  CommandLine.Help A collection of methods and inner classes that provide fine-grained control over the contents and layout of the usage help message to display to end users when help is requested or invalid input values were specified.
  CommandLine.Help.Ansi Provides methods and inner classes to support using ANSI escape codes in usage help messages.
  CommandLine.Help.Ansi.IStyle Defines the interface for an ANSI escape sequence.
  CommandLine.Help.Ansi.Style A set of pre-defined ANSI escape code styles and colors, and a set of convenience methods for parsing text with embedded markup style names, as well as convenience methods for converting styles to strings with embedded escape codes.
  CommandLine.Help.Ansi.Text Encapsulates rich text with styles and colors.
  CommandLine.Help.ColorScheme All usage help message are generated with a color scheme that assigns certain styles and colors to common parts of a usage message: the command name, options, positional parameters and option parameters.
  CommandLine.Help.Column Columns define the width, indent (leading number of spaces in a column before the value) and Overflow policy of a column in a TextTable.
  CommandLine.Help.Column.Overflow Policy for handling text that is longer than the column width: span multiple columns, wrap to the next row, or simply truncate the portion that doesn't fit.
  CommandLine.Help.IOptionRenderer When customizing online help for `Option` details, a custom `IOptionRenderer` can be used to create textual representation of an Option in a tabular format: one or more rows, each containing one or more columns.
  CommandLine.Help.IParameterRenderer When customizing online help for positional parameters details, a custom `IParameterRenderer` can be used to create textual representation of a Parameters field in a tabular format: one or more rows, each containing one or more columns.
  CommandLine.Help.IParamLabelRenderer When customizing online usage help for an option parameter or a positional parameter, a custom `IParamLabelRenderer` can be used to render the parameter name or label to a String.
  CommandLine.Help.Layout Use a Layout to format usage help text for options and parameters in tabular format.
  CommandLine.Help.TextTable Responsible for spacing out `CommandLine.Help.Ansi.Text` values according to the `CommandLine.Help.Column` definitions the table was created with.
  CommandLine.Help.TextTable.Cell Helper class to index positions in a `Help.TextTable`.
  CommandLine.Help.Visibility Controls the visibility of certain aspects of the usage help message.
  CommandLine.IDefaultValueProvider Provides default value for a command.
  CommandLine.IExceptionHandler Deprecated. Use `CommandLine.IExceptionHandler2` instead.
  CommandLine.IExceptionHandler2 Classes implementing this interface know how to handle `ParameterExceptions` (usually from invalid user input) and `ExecutionExceptions` that occurred while executing the `Runnable` or `Callable` command.
  CommandLine.IFactory Factory for instantiating classes that are registered declaratively with annotation attributes, like `CommandLine.Command.subcommands()`, `CommandLine.Option.converter()`, `CommandLine.Parameters.converter()` and `CommandLine.Command.versionProvider()`.
  CommandLine.IHelpCommandInitializable Help commands that provide usage help for other commands can implement this interface to be initialized with the information they need.
  CommandLine.IHelpFactory Creates the `CommandLine.Help` instance used to render the usage help message.
  CommandLine.IHelpSectionRenderer Renders a section of the usage help message.
  CommandLine.InitializationException Exception indicating a problem during `CommandLine` initialization.
  CommandLine.IParseResultHandler Deprecated. Use `CommandLine.IParseResultHandler2` instead.
  CommandLine.IParseResultHandler2 Represents a function that can process the `ParseResult` object resulting from successfully parsing the command line arguments.
  CommandLine.ITypeConverter When parsing command line arguments and initializing fields annotated with `@Option` or `@Parameters`, String values can be converted to any type for which a `ITypeConverter` is registered.
  CommandLine.IVersionProvider Provides version information for a command.
  CommandLine.Model.ArgSpec Models the shared attributes of `CommandLine.Model.OptionSpec` and `CommandLine.Model.PositionalParamSpec`.
  CommandLine.Model.CommandSpec The `CommandSpec` class models a command specification, including the options, positional parameters and subcommands supported by the command, as well as attributes for the version help message and the usage help message of the command.
  CommandLine.Model.IGetter Customizable getter for obtaining the current value of an option or positional parameter.
  CommandLine.Model.ISetter Customizable setter for modifying the value of an option or positional parameter.
  CommandLine.Model.Messages Utility class for getting resource bundle strings.
  CommandLine.Model.OptionSpec The `OptionSpec` class models aspects of a named option of a command, including whether it is required or optional, the option parameters supported (or required) by the option, and attributes for the usage help message describing the option.
  CommandLine.Model.OptionSpec.Builder Builder responsible for creating valid `OptionSpec` objects.
  CommandLine.Model.ParserSpec Models parser configuration specification.
  CommandLine.Model.PositionalParamSpec The `PositionalParamSpec` class models aspects of a positional parameter of a command, including whether it is required or optional, and attributes for the usage help message describing the positional parameter.
  CommandLine.Model.PositionalParamSpec.Builder Builder responsible for creating valid `PositionalParamSpec` objects.
  CommandLine.Model.UnmatchedArgsBinding This class allows applications to specify a custom binding that will be invoked for unmatched arguments.
  CommandLine.Model.UsageMessageSpec Models the usage help message specification and can be used to customize the usage help message.
  CommandLine.ParameterException Exception indicating something went wrong while parsing command line options.
  CommandLine.ParseResult Encapsulates the result of parsing an array of command line arguments.
  CommandLine.ParseResult.Builder Builds immutable `ParseResult` instances.
  CommandLine.PicocliException Base class of all exceptions thrown by `picocli.CommandLine`.
  CommandLine.Range Describes the number of parameters required and accepted by an option or a positional parameter.
  CommandLine.RunAll Command line parse result handler that prints help if requested, and otherwise executes the top-level command and all subcommands as `Runnable` or `Callable`.
  CommandLine.RunFirst Command line parse result handler that prints help if requested, and otherwise executes the top-level `Runnable` or `Callable` command.
  CommandLine.RunLast Command line parse result handler that prints help if requested, and otherwise executes the most specific `Runnable` or `Callable` subcommand.

- Classes in picocli used by picocli.groovy
  Class and Description
  CommandLine CommandLine interpreter that uses reflection to initialize an annotated domain object with values obtained from the command line arguments.
  CommandLine.ParameterException Exception indicating something went wrong while parsing command line options.

Copyright © 2020. All rights reserved.