Commander class abstract
An abstract base class for CLI commands in the distribute CLI.
The Commander class extends the Command class from the args package
and provides a logger instance for logging messages with color support.
It automatically configures the logger based on the global verbose flag.
Commands are typed as Command<int> so that every command reports an exit
code, which the entry point forwards to the process. Returning 0 means
success, any other value marks the invocation as failed.
- Inheritance
- Implementers
Constructors
- Commander()
- Creates a new Commander instance.
Properties
-
aliases
→ List<
String> -
Alternate names for this command.
no setterinherited
- argParser → ArgParser
-
The argument parser for this command.
no setterinherited
- argResults → ArgResults?
-
The parsed argument results for this command.
no setterinherited
- category → String
-
The command's category.
no setterinherited
- configPath → String
-
The configuration file this command should read.
no setter
- description → String
-
A description of this command, included in
usage.no setterinherited - globalResults → ArgResults?
-
The parsed global argument results.
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
-
Whether or not this command should be hidden from help listings.
no setterinherited
- invocation → String
-
A single-line template for how to invoke this command (e.g.
"pub getpackage").no setterinherited - logger → ColorizeLogger
-
The logger used by this command.
no setter
- name → String
-
The name of this command.
no setterinherited
-
parent
→ Command<
int> ? -
The command's parent command, if this is a subcommand.
no setterinherited
-
runner
→ CommandRunner<
int> ? -
The command runner for this command.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
subcommands
→ Map<
String, Command< int> > -
An unmodifiable view of all sublevel commands of this command.
no setterinherited
-
suggestionAliases
→ List<
String> -
Alternate non-functional names for this command.
no setterinherited
- summary → String
-
A short description of this command, included in
parent'sCommandRunner.usage.no setterinherited - takesArguments → bool
-
Whether or not this command takes positional arguments in addition to
options.
no setterinherited
- usage → String
-
Generates a string displaying usage information for this command.
no setterinherited
-
An optional footer for
usage.no setterinherited
Methods
-
addSubcommand(
Command< int> command) → void -
Adds
Commandas a subcommand of this.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
printUsage(
) → void -
Prints the usage information for this command.
inherited
-
run(
) → FutureOr< int> ? -
Runs this command.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
usageException(
String message) → Never -
Throws a
UsageExceptionwithmessage.inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited