class ContainerAwareCommand extends Command implements ContainerAwareInterface

Command.

Methods

__construct(string|null $name = null)

Constructor.

from Command
ignoreValidationErrors()

Ignores validation errors.

from Command
setApplication(Application $application = null)

Sets the application instance for this command.

from Command
setHelperSet(HelperSet $helperSet)

Sets the helper set.

from Command
getHelperSet()

Gets the helper set.

from Command
getApplication()

Gets the application instance for this command.

from Command
bool
isEnabled()

Checks whether the command is enabled or not in the current environment.

from Command
int
run(InputInterface $input, OutputInterface $output)

Runs the command.

from Command
setCode(callable $code)

Sets the code to execute when running this command.

from Command
mergeApplicationDefinition(bool $mergeArgs = true)

Merges the application definition with the command definition.

from Command
setDefinition(array|InputDefinition $definition)

Sets an array of argument and option instances.

from Command
getDefinition()

Gets the InputDefinition attached to this Command.

from Command
getNativeDefinition()

Gets the InputDefinition to be used to create XML and Text representations of this Command.

from Command
addArgument(string $name, int $mode = null, string $description = '', mixed $default = null)

Adds an argument.

from Command
addOption(string $name, string $shortcut = null, int $mode = null, string $description = '', mixed $default = null)

Adds an option.

from Command
setName(string $name)

Sets the name of the command.

from Command
setProcessTitle(string $title)

Sets the process title of the command.

from Command
string
getName()

Returns the command name.

from Command
setDescription(string $description)

Sets the description for the command.

from Command
string
getDescription()

Returns the description for the command.

from Command
setHelp(string $help)

Sets the help for the command.

from Command
string
getHelp()

Returns the help for the command.

from Command
string
getProcessedHelp()

Returns the processed help for the command replacing the %command.name% and %command.full_name% patterns with the real values dynamically.

from Command
setAliases(string[] $aliases)

Sets the aliases for the command.

from Command
array
getAliases()

Returns the aliases for the command.

from Command
string
getSynopsis(bool $short = false)

Returns the synopsis for the command.

from Command
addUsage(string $usage)

Add a command usage example.

from Command
array
getUsages()

Returns alternative usages of the command.

from Command
mixed
getHelper(string $name)

Gets a helper instance by name.

from Command
string
asText() deprecated

Returns a text representation of the command.

from Command
string|DOMDocument
asXml(bool $asDom = false) deprecated

Returns an XML representation of the command.

from Command
setContainer(ContainerInterface $container = null)

Sets the container.

Details

in Command at line line 57
__construct(string|null $name = null)

Constructor.

Parameters

string|null $name The name of the command; passing null means it must be set in configure()

Exceptions

LogicException When the command name is empty

in Command at line line 77
ignoreValidationErrors()

Ignores validation errors.

This is mainly useful for the help command.

in Command at line line 87
setApplication(Application $application = null)

Sets the application instance for this command.

Parameters

Application $application An Application instance

in Command at line line 102
setHelperSet(HelperSet $helperSet)

Sets the helper set.

Parameters

HelperSet $helperSet A HelperSet instance

in Command at line line 112
HelperSet getHelperSet()

Gets the helper set.

Return Value

HelperSet A HelperSet instance

in Command at line line 122
Application getApplication()

Gets the application instance for this command.

Return Value

Application An Application instance

in Command at line line 135
bool isEnabled()

Checks whether the command is enabled or not in the current environment.

Override this to check for x or y and return false if the command can not run properly under the current conditions.

Return Value

bool

in Command at line line 213
int run(InputInterface $input, OutputInterface $output)

Runs the command.

The code to execute is either defined directly with the setCode() method or by overriding the execute() method in a sub-class.

Parameters

InputInterface $input An InputInterface instance
OutputInterface $output An OutputInterface instance

Return Value

int The command exit code

Exceptions

Exception

See also

setCode()
execute()

in Command at line line 279
Command setCode(callable $code)

Sets the code to execute when running this command.

If this method is used, it overrides the code defined in the execute() method.

Parameters

callable $code A callable(InputInterface $input, OutputInterface $output)

Return Value

Command The current instance

Exceptions

InvalidArgumentException

See also

execute()

in Command at line line 304
mergeApplicationDefinition(bool $mergeArgs = true)

Merges the application definition with the command definition.

This method is not part of public API and should not be used directly.

Parameters

bool $mergeArgs Whether to merge or not the Application definition arguments to Command definition arguments

in Command at line line 331
Command setDefinition(array|InputDefinition $definition)

Sets an array of argument and option instances.

Parameters

array|InputDefinition $definition An array of argument and option instances or a definition instance

Return Value

Command The current instance

in Command at line line 349
InputDefinition getDefinition()

Gets the InputDefinition attached to this Command.

Return Value

InputDefinition An InputDefinition instance

in Command at line line 364
InputDefinition getNativeDefinition()

Gets the InputDefinition to be used to create XML and Text representations of this Command.

Can be overridden to provide the original command representation when it would otherwise be changed by merging with the application InputDefinition.

This method is not part of public API and should not be used directly.

Return Value

InputDefinition An InputDefinition instance

in Command at line line 379
Command addArgument(string $name, int $mode = null, string $description = '', mixed $default = null)

Adds an argument.

Parameters

string $name The argument name
int $mode The argument mode: InputArgument::REQUIRED or InputArgument::OPTIONAL
string $description A description text
mixed $default The default value (for InputArgument::OPTIONAL mode only)

Return Value

Command The current instance

in Command at line line 397
Command addOption(string $name, string $shortcut = null, int $mode = null, string $description = '', mixed $default = null)

Adds an option.

Parameters

string $name The option name
string $shortcut The shortcut (can be null)
int $mode The option mode: One of the InputOption::VALUE_* constants
string $description A description text
mixed $default The default value (must be null for InputOption::VALUEREQUIRED or InputOption::VALUENONE)

Return Value

Command The current instance

in Command at line line 418
Command setName(string $name)

Sets the name of the command.

This method can set both the namespace and the name if you separate them by a colon (:)

$command->setName('foo:bar');

Parameters

string $name The command name

Return Value

Command The current instance

Exceptions

InvalidArgumentException When the name is invalid

in Command at line line 439
Command setProcessTitle(string $title)

Sets the process title of the command.

This feature should be used only when creating a long process command, like a daemon.

PHP 5.5+ or the proctitle PECL library is required

Parameters

string $title The process title

Return Value

Command The current instance

in Command at line line 451
string getName()

Returns the command name.

Return Value

string The command name

in Command at line line 463
Command setDescription(string $description)

Sets the description for the command.

Parameters

string $description The description for the command

Return Value

Command The current instance

in Command at line line 475
string getDescription()

Returns the description for the command.

Return Value

string The description for the command

in Command at line line 487
Command setHelp(string $help)

Sets the help for the command.

Parameters

string $help The help for the command

Return Value

Command The current instance

in Command at line line 499
string getHelp()

Returns the help for the command.

Return Value

string The help for the command

in Command at line line 510
string getProcessedHelp()

Returns the processed help for the command replacing the %command.name% and %command.full_name% patterns with the real values dynamically.

Return Value

string The processed help for the command

in Command at line line 535
Command setAliases(string[] $aliases)

Sets the aliases for the command.

Parameters

string[] $aliases An array of aliases for the command

Return Value

Command The current instance

Exceptions

InvalidArgumentException When an alias is invalid

in Command at line line 555
array getAliases()

Returns the aliases for the command.

Return Value

array An array of aliases for the command

in Command at line line 567
string getSynopsis(bool $short = false)

Returns the synopsis for the command.

Parameters

bool $short Whether to show the short version of the synopsis (with options folded) or not

Return Value

string The synopsis

in Command at line line 583
addUsage(string $usage)

Add a command usage example.

Parameters

string $usage The usage, it'll be prefixed with the command name

in Command at line line 599
array getUsages()

Returns alternative usages of the command.

Return Value

array

in Command at line line 613
mixed getHelper(string $name)

Gets a helper instance by name.

Parameters

string $name The helper name

Return Value

mixed The helper value

Exceptions

InvalidArgumentException if the helper is not defined

in Command at line line 625
string asText() deprecated

deprecated since version 2.3, to be removed in 3.0.

Returns a text representation of the command.

Return Value

string A string representing the command

in Command at line line 645
string|DOMDocument asXml(bool $asDom = false) deprecated

deprecated since version 2.3, to be removed in 3.0.

Returns an XML representation of the command.

Parameters

bool $asDom Whether to return a DOM or an XML string

Return Value

string|DOMDocument An XML string representing the command

at line line 52
setContainer(ContainerInterface $container = null)

Sets the container.

Parameters

ContainerInterface $container A ContainerInterface instance or null