Class HelpCommand
Print out command list
Property Summary
-
$_modelFactories protected
array
A list of overridden model factory functions.
-
$_modelType protected
string
The model type to use.
-
$_tableLocator protected
Cake\ORM\Locator\LocatorInterface
Table locator instance
-
$commands protected
Cake\Console\CommandCollection
The command collection to get help on.
-
$modelClass public
string|false|null
This object's primary model class name. Should be a plural form. CakePHP will not inflect the name.
-
$name protected
string
The name of this command.
Method Summary
-
__construct() public
Constructor
-
_setModelClass() protected
Set the modelClass and modelKey properties based on conventions.
-
abort() public
Halt the the current process with a StopException.
-
asText() protected
Output text.
-
asXml() protected
Output as XML
-
buildOptionParser() protected
Gets the option parser instance and configures it.
-
displayHelp() protected
Output help content
-
execute() public
Main function Prints out the list of commands.
-
getModelType() public
Get the model type to be used by this class
-
getName() public
Get the command name.
-
getOptionParser() public
Get the option parser.
-
getTableLocator() public
Gets the table locator.
-
initialize() public
Hook method invoked by CakePHP when a command is about to be executed.
-
loadModel() public
Loads and constructs repository objects required by this object
-
log() public
Convenience method to write a message to Log. See Log::write() for more information on writing to logs.
-
modelFactory() public
Override a existing callable to generate repositories of a given type.
-
modelType() public deprecated
Set or get the model type to be used by this class
-
run() public
Run the command.
-
setCommandCollection() public
Set the command collection being used.
-
setModelType() public
Set the model type to be used by this class
-
setName() public
Set the name this command uses in the collection.
-
setOutputLevel() protected
Set the output level based on the Arguments.
-
setTableLocator() public
Sets the table locator.
-
tableLocator() public deprecated
Sets the table locator. If no parameters are passed, it will return the currently used locator.
Method Detail
__construct() ¶ public
__construct()
Constructor
By default CakePHP will construct command objects when building the CommandCollection for your application.
_setModelClass() ¶ protected
_setModelClass(string $name): void
Set the modelClass and modelKey properties based on conventions.
If the properties are already set they will not be overwritten
Parameters
-
string
$name Class name.
Returns
void
abort() ¶ public
abort(int $code = self::CODE_ERROR): void
Halt the the current process with a StopException.
Parameters
-
int
$code optional The exit code to use.
Returns
void
Throws
Cake\Console\Exception\StopException
asText() ¶ protected
asText(Cake\Console\ConsoleIo $io, ArrayIterator $commands): void
Output text.
Parameters
-
Cake\Console\ConsoleIo
$io The console io
-
ArrayIterator
$commands The command collection to output.
Returns
void
asXml() ¶ protected
asXml(Cake\Console\ConsoleIo $io, ArrayIterator $commands): void
Output as XML
Parameters
-
Cake\Console\ConsoleIo
$io The console io
-
ArrayIterator
$commands The command collection to output
Returns
void
buildOptionParser() ¶ protected
buildOptionParser(Cake\Console\ConsoleOptionParser $parser): Cake\Console\ConsoleOptionParser
Gets the option parser instance and configures it.
Parameters
-
Cake\Console\ConsoleOptionParser
$parser The parser to build
Returns
Cake\Console\ConsoleOptionParser
displayHelp() ¶ protected
displayHelp(Cake\Console\ConsoleOptionParser $parser, Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): void
Output help content
Parameters
-
Cake\Console\ConsoleOptionParser
$parser The option parser.
-
Cake\Console\Arguments
$args The command arguments.
-
Cake\Console\ConsoleIo
$io The console io
Returns
void
execute() ¶ public
execute(Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): int
Main function Prints out the list of commands.
Parameters
-
Cake\Console\Arguments
$args The command arguments.
-
Cake\Console\ConsoleIo
$io The console io
Returns
int
getModelType() ¶ public
getModelType(): string
Get the model type to be used by this class
Returns
string
getOptionParser() ¶ public
getOptionParser(): Cake\Console\ConsoleOptionParser
Get the option parser.
You can override buildOptionParser() to define your options & arguments.
Returns
Cake\Console\ConsoleOptionParser
Throws
RuntimeException
When the parser is invalid
getTableLocator() ¶ public
getTableLocator(): Cake\ORM\Locator\LocatorInterface
Gets the table locator.
Returns
Cake\ORM\Locator\LocatorInterface
initialize() ¶ public
initialize(): void
Hook method invoked by CakePHP when a command is about to be executed.
Override this method and implement expensive/important setup steps that should not run on every command run. This method will be called before the options and arguments are validated and processed.
Returns
void
loadModel() ¶ public
loadModel(string|null $modelClass = null, string|null $modelType = null): Cake\Datasource\RepositoryInterface
Loads and constructs repository objects required by this object
Typically used to load ORM Table objects as required. Can also be used to load other types of repository objects your application uses.
If a repository provider does not return an object a MissingModelException will be thrown.
Parameters
-
string|null
$modelClass optional Name of model class to load. Defaults to $this->modelClass
-
string|null
$modelType optional The type of repository to load. Defaults to the modelType() value.
Returns
Cake\Datasource\RepositoryInterface
Throws
Cake\Datasource\Exception\MissingModelException
If the model class cannot be found.
InvalidArgumentException
When using a type that has not been registered.
UnexpectedValueException
If no model type has been defined
log() ¶ public
log(mixed $msg, int|string $level = LogLevel::ERROR, string|array $context = []): bool
Convenience method to write a message to Log. See Log::write() for more information on writing to logs.
Parameters
-
mixed
$msg Log message.
-
int|string
$level optional Error level.
-
string|array
$context optional Additional log data relevant to this message.
Returns
bool
modelFactory() ¶ public
modelFactory(string $type, callable $factory): void
Override a existing callable to generate repositories of a given type.
Parameters
-
string
$type The name of the repository type the factory function is for.
-
callable
$factory The factory function used to create instances.
Returns
void
modelType() ¶ public
modelType(string|null $modelType = null): string|$this
Set or get the model type to be used by this class
Parameters
-
string|null
$modelType optional The model type or null to retrieve the current
Returns
string|$this
run() ¶ public
run(array $argv, Cake\Console\ConsoleIo $io): int|null
Run the command.
Parameters
-
array
$argv Arguments from the CLI environment.
-
Cake\Console\ConsoleIo
$io The console io
Returns
int|null
setCommandCollection() ¶ public
setCommandCollection(Cake\Console\CommandCollection $commands): void
Set the command collection being used.
Parameters
-
Cake\Console\CommandCollection
$commands
Returns
void
setModelType() ¶ public
setModelType(string $modelType): $this
Set the model type to be used by this class
Parameters
-
string
$modelType The model type
Returns
$this
setName() ¶ public
setName(string $name): $this
Set the name this command uses in the collection.
Generally invoked by the CommandCollection when the command is added. Required to have at least one space in the name so that the root command can be calculated.
Parameters
-
string
$name The name the command uses in the collection.
Returns
$this
Throws
InvalidArgumentException
setOutputLevel() ¶ protected
setOutputLevel(Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): void
Set the output level based on the Arguments.
Parameters
-
Cake\Console\Arguments
$args The command arguments.
-
Cake\Console\ConsoleIo
$io The console io
Returns
void
setTableLocator() ¶ public
setTableLocator(Cake\ORM\Locator\LocatorInterface $tableLocator): $this
Sets the table locator.
Parameters
-
Cake\ORM\Locator\LocatorInterface
$tableLocator LocatorInterface instance.
Returns
$this
tableLocator() ¶ public
tableLocator(Cake\ORM\Locator\LocatorInterface|null $tableLocator = null): Cake\ORM\Locator\LocatorInterface
Sets the table locator. If no parameters are passed, it will return the currently used locator.
Parameters
-
Cake\ORM\Locator\LocatorInterface|null
$tableLocator optional LocatorInterface instance.
Returns
Cake\ORM\Locator\LocatorInterface
Property Detail
$modelClass ¶ public
This object's primary model class name. Should be a plural form. CakePHP will not inflect the name.
Example: For an object named 'Comments', the modelClass would be 'Comments'.
Plugin classes should use Plugin.Comments
style names to correctly load
models from the correct plugin.
Use false to not use auto-loading on this object. Null auto-detects based on controller name.
Type
string|false|null