/var/www/vhosts/ihelp.ro/httpdocs/vendor/cakephp/bake/src/Command
Edit: /var/www/vhosts/ihelp.ro/httpdocs/vendor/cakephp/bake/src/Command/AllCommand.php (3899B)
_setCommonOptions($parser);
$parser = $parser->setDescription(
'Generate the model, controller, template, tests and fixture for a table.'
)->addArgument('name', [
'help' => 'Name of the table to generate code for.',
])->addOption('everything', [
'help' => 'Generate code for all tables.',
'default' => false,
'boolean' => true,
])->addOption('prefix', [
'help' => 'The namespace prefix to use.',
'default' => false,
]);
return $parser;
}
/**
* Execute the command.
*
* @param \Cake\Console\Arguments $args The command arguments.
* @param \Cake\Console\ConsoleIo $io The console io
* @return int|null The exit code or null for success
*/
public function execute(Arguments $args, ConsoleIo $io): ?int
{
$this->extractCommonProperties($args);
$name = $args->getArgument('name') ?? '';
$name = $this->_getName($name);
$io->out('Bake All');
$io->hr();
/** @var \Cake\Database\Connection $connection */
$connection = ConnectionManager::get($this->connection);
$scanner = new TableScanner($connection);
if (empty($name) && !$args->getOption('everything')) {
$io->out('Choose a table to generate from the following:');
foreach ($scanner->listUnskipped() as $table) {
$io->out('- ' . $this->_camelize($table));
}
return static::CODE_SUCCESS;
}
if ($args->getOption('everything')) {
$tables = $scanner->listUnskipped();
} else {
$tables = [$name];
}
foreach ($this->commands as $commandName) {
/** @var \Cake\Command\Command $command */
$command = new $commandName();
$options = $args->getOptions();
if (
$args->hasOption('prefix') &&
!($command instanceof ControllerCommand) &&
!($command instanceof TemplateCommand)
) {
unset($options['prefix']);
}
foreach ($tables as $table) {
$subArgs = new Arguments([$table], $options, ['name']);
$command->execute($subArgs, $io);
}
}
$io->out('
Bake All complete.', 1, ConsoleIo::NORMAL);
return static::CODE_SUCCESS;
}
}