Класс CompletionCommand
Предоставляет оболочки командного интерпретатора, такие как bash.
Константы
-
intCODE_ERROR1
Код ошибки по умолчанию
-
intCODE_SUCCESS0
Код успеха по умолчанию
Краткое описание свойств
- $_modelFactories protected
array<callableCake\Datasource\Locator\LocatorInterface>Список переопределённых функций фабрики моделей.
- $_modelType protected
stringТип модели для использования.
- $_tableLocator protected
Cake\ORM\Locator\LocatorInterface|nullЭкземпляр локатора таблиц
- $commands protected
Cake\Console\CommandCollection - $defaultTable protected
string|nullПсевдоним таблицы по умолчанию для этого объекта.
- $modelClass protected deprecated
string|nullИмя основного класса модели для этого объекта. Должно быть в множественном числе. CakePHP не будет склонять имя.
- $name protected
stringИмя этой команды.
Краткое описание методов
-
__construct() public
Конструктор
-
_setModelClass() protected
Устанавливает свойство modelClass на основе соглашений.
-
abort() public
Прекращает текущий процесс с исключением StopException.
-
buildOptionParser() public
Получает экземпляр парсера опций и настраивает его.
-
defaultName() public static
Получить имя команды.
-
displayHelp() protected
Выводит содержимое справки
-
execute() public
Главная функция. Выводит список команд.
-
executeCommand() public
Выполняет другую команду с предоставленным набором аргументов.
-
fetchTable() public
Удобный метод для получения экземпляра таблицы.
-
getCommands() protected
Получить список определённых команд.
-
getModelType() public
Получить тип модели, который будет использоваться этим классом
-
getName() public
Получить имя команды.
-
getOptionParser() public
Получить парсер опций.
-
getOptions() protected
Получить опции для команды или подкоманды
-
getRootName() public
Получить имя корневой команды.
-
getSubcommands() protected
Получить список определённых подкоманд.
-
getTableLocator() public
Получает локатор таблиц.
-
initialize() public
Метод хука, вызываемый CakePHP, когда команда должна быть выполнена.
-
loadModel() public deprecated
Загружает и создаёт репозиторные объекты, необходимые для этого объекта
-
log() public
Удобный метод для записи сообщения в журнал. Для получения дополнительной информации о записи в журналы, см. Log::write().
-
modelFactory() public
Переопределить существующую вызываемую функцию для создания репозиториев заданного типа.
-
run() public
Выполнить команду.
-
setCommandCollection() public
Установить коллекцию команд, используемую для получения данных автодополнения.
-
setModelType() public
Установить тип модели, который будет использоваться этим классом
-
setName() public
Установить имя, которое эта команда использует в коллекции.
-
setOutputLevel() protected
Установить уровень вывода на основе аргументов.
-
setTableLocator() public
Устанавливает локатор таблиц.
-
shellSubcommands() protected
Отразить имена подкоманд из оболочки.
Подробное описание методов
__construct() public
__construct()
Конструктор
По умолчанию CakePHP создает объекты команд при построении CommandCollection для вашего приложения.
_setModelClass() protected
_setModelClass(string $name): void
Установить свойство modelClass на основе соглашений.
Если свойство уже установлено, оно не будет перезаписано
Параметры
string$nameИмя класса.
Возвращает
voidabort() public
abort(int $code = self::CODE_ERROR): void
Прекратить текущий процесс с помощью StopException.
Параметры
int$code optionalКод выхода.
Возвращает
voidВыбрасывает
Cake\Console\Exception\StopExceptionbuildOptionParser() public
buildOptionParser(Cake\Console\ConsoleOptionParser $parser): Cake\Console\ConsoleOptionParser
Получает экземпляр анализатора параметров и настраивает его.
Параметры
Cake\Console\ConsoleOptionParser$parserАнализатор для построения
Возвращает
Cake\Console\ConsoleOptionParserdefaultName() public static
defaultName(): string
Получить имя команды.
Возвращает имя команды на основе имени класса. Например, для команды с именем класса UpdateTableCommand, возвращаемое имя по умолчанию будет 'update_table'.
Возвращает
stringdisplayHelp() protected
displayHelp(Cake\Console\ConsoleOptionParser $parser, Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): void
Вывод содержимого справки.
Параметры
Cake\Console\ConsoleOptionParser$parserАнализатор параметров.
Cake\Console\Arguments$argsАргументы команды.
Cake\Console\ConsoleIo$ioВвод-вывод консоли
Возвращает
voidexecute() public
execute(Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): int
Основная функция Выводит список команд.
Параметры
Cake\Console\Arguments$argsАргументы команды.
Cake\Console\ConsoleIo$ioВвод-вывод консоли
Возвращает
intexecuteCommand() public
executeCommand(Cake\Console\CommandInterface|string $command, array $args = [], Cake\Console\ConsoleIo|null $io = null): int|null
Выполнить другую команду с предоставленным набором аргументов.
Если вы используете имя команды в виде строки, зависимости этой команды не будут разрешены с помощью контейнера приложения. Вместо этого вам нужно передать команду в виде объекта со всеми ее зависимостями.
Параметры
Cake\Console\CommandInterface|string$commandИмя класса команды или экземпляр команды.
array$args optionalАргументы для вызова команды.
Cake\Console\ConsoleIo|null$io optionalЭкземпляр ConsoleIo, который следует использовать для выполняемой команды.
Возвращает
int|nullfetchTable() public
fetchTable(string|null $alias = null, array<string, mixed> $options = []): Cake\ORM\Table
Удобный метод для получения экземпляра таблицы.
Параметры
string|null$alias optionalИмя псевдонима, которое вы хотите получить. Должно быть в формате CamelCase. Если
null, используется значение свойства $defaultTable.array<string, mixed>$options optionalОпции, с которыми вы хотите создать таблицу. Если таблица уже загружена, опции реестра будут проигнорированы.
Возвращает
Cake\ORM\TableВыбрасывает
Cake\Core\Exception\CakeExceptionЕсли аргумент `$alias` и свойство `$defaultTable` оба равны `null`.
См. также
getCommands() protected
getCommands(Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): int
Получить список определенных команд.
Параметры
Cake\Console\Arguments$argsАргументы команды.
Cake\Console\ConsoleIo$ioВвод-вывод консоли
Возвращает
intgetModelType() public
getModelType(): string
Получить тип модели, который будет использоваться этим классом
Возвращает
stringgetName() public
getName(): string
Получить имя команды.
Возвращает
stringgetOptionParser() public
getOptionParser(): Cake\Console\ConsoleOptionParser
Получить анализатор параметров.
Вы можете переопределить buildOptionParser(), чтобы определить свои параметры и аргументы.
Возвращает
Cake\Console\ConsoleOptionParserВыбрасывает
RuntimeExceptionПри невалидном анализаторе
getOptions() protected
getOptions(Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): int
Получить параметры для команды или подкоманды
Параметры
Cake\Console\Arguments$argsАргументы команды.
Cake\Console\ConsoleIo$ioВвод-вывод консоли
Возвращает
intgetRootName() public
getRootName(): string
Получить имя корневой команды.
Возвращает
stringgetSubcommands() protected
getSubcommands(Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): int
Получить список определенных подкоманд.
Параметры
Cake\Console\Arguments$argsАргументы команды.
Cake\Console\ConsoleIo$ioВвод-вывод консоли
Возвращает
intgetTableLocator() public
getTableLocator(): Cake\ORM\Locator\LocatorInterface
Получить локатор таблиц.
Возвращает
Cake\ORM\Locator\LocatorInterfaceinitialize() public
initialize(): void
Метод-обработчик, вызываемый CakePHP, когда команда собирается быть выполненной.
Переопределите этот метод и реализуйте дорогостоящие/важные шаги настройки, которые не должны выполняться при каждом запуске команды. Этот метод будет вызван до проверки и обработки параметров и аргументов.
Возвращает
voidloadModel() public
loadModel(string|null $modelClass = null, string|null $modelType = null): Cake\Datasource\RepositoryInterface
Загружает и создает объекты хранилища, необходимые для этого объекта.
Обычно используется для загрузки объектов таблиц ORM по мере необходимости. Также может использоваться для загрузки других типов объектов хранилища, используемых вашим приложением.
Если поставщик хранилища не возвращает объект, будет выброшено MissingModelException.
Параметры
string|null$modelClass optionalИмя класса модели для загрузки. По умолчанию равно $this->modelClass. Имя может быть псевдонимом, например
'Post', или полным именем класса, напримерApp\Model\Table\PostsTable::class.string|null$modelType optionalТип хранилища для загрузки. По умолчанию равно значению getModelType().
Возвращает
Cake\Datasource\RepositoryInterfaceВыбрасывает
Cake\Datasource\Exception\MissingModelExceptionЕсли класс модели не найден.
UnexpectedValueExceptionЕсли аргумент `$modelClass` не указан, а свойство ModelAwareTrait::$modelClass имеет пустое значение.
log() public
log(string $message, string|int $level = LogLevel::ERROR, array|string $context = []): bool
Метод для записи сообщения в журнал. Подробнее о записи в журналы см. Log::write().
Параметры
-
string$message Сообщение журнала.
-
string|int$level optional Уровень ошибки.
-
array|string$context optional Дополнительные данные журнала, относящиеся к этому сообщению.
Возвращает
boolmodelFactory() public
modelFactory(string $type, Cake\Datasource\Locator\LocatorInterface|callable $factory): void
Переопределяет существующую вызываемую функцию для генерации репозиториев заданного типа.
Параметры
-
string$type Имя типа репозитория, для которого предназначена функция фабрики.
-
Cake\Datasource\Locator\LocatorInterface|callable$factory Функция фабрики, используемая для создания экземпляров.
Возвращает
voidrun() public
run(array $argv, Cake\Console\ConsoleIo $io): int|null
Выполнить команду.
Параметры
-
array$argv -
Cake\Console\ConsoleIo$io
Возвращает
int|nullsetCommandCollection() public
setCommandCollection(Cake\Console\CommandCollection $commands): void
Установить коллекцию команд, используемых для получения данных завершения.
Параметры
-
Cake\Console\CommandCollection$commands Коллекция команд
Возвращает
voidsetModelType() public
setModelType(string $modelType): $this
Установить тип модели, который будет использоваться этим классом
Параметры
-
string$modelType Тип модели
Возвращает
$thissetName() public
setName(string $name): $this
Установить имя, которое эта команда использует в коллекции.
Обычно вызывается CommandCollection при добавлении команды. Требуется иметь хотя бы один пробел в имени, чтобы можно было вычислить основную команду.
Параметры
-
string$name
Возвращает
$thissetOutputLevel() protected
setOutputLevel(Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): void
Установить уровень вывода на основе аргументов.
Параметры
-
Cake\Console\Arguments$args Аргументы команды.
-
Cake\Console\ConsoleIo$io Ввод-вывод консоли
Возвращает
voidsetTableLocator() public
setTableLocator(Cake\ORM\Locator\LocatorInterface $tableLocator): $this
Устанавливает локатор таблицы.
Параметры
-
Cake\ORM\Locator\LocatorInterface$tableLocator Экземпляр LocatorInterface.
Возвращает
$thisshellSubcommands() protected
shellSubcommands(Cake\Console\Shell $shell): array<string>
Отображает имена подкоманд из командной оболочки.
Параметры
-
Cake\Console\Shell$shell Оболочка, для которой необходимо получить команды
Возвращает
array<string>Подробное описание свойств
$_modelFactories protected
Список переопределённых функций фабрики моделей.
Тип
array<callableCake\Datasource\Locator\LocatorInterface>$_modelType protected
Тип используемой модели.
Тип
string$_tableLocator protected
Экземпляр локатора таблиц
Тип
Cake\ORM\Locator\LocatorInterface|null$commands protected
Тип
Cake\Console\CommandCollection$defaultTable protected
Псевдоним таблицы по умолчанию для этого объекта.
Тип
string|null$modelClass protected deprecated
Основное имя класса модели для этого объекта. Должно быть во множественном числе. CakePHP не будет склонять имя.
Пример: Для объекта с именем «Comments», моделью будет «Comments». Плагиновые классы должны использовать имена в формате Plugin.Comments для правильной загрузки моделей из соответствующего плагина.
Использование пустой строки предотвращает автоматическую загрузку для этого объекта. Значение null автоматически определяет имя на основе имени контроллера.
Тип
string|null$name protected
Имя этой команды.
Тип
string
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.3/class-Cake.Command.CompletionCommand.html