Класс 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
Получить список определённых команд.
-
getDescription() public static
Получить описание команды.
-
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 необязательно Код завершения, который нужно использовать.
Возвращает
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 необязательно Аргументы для вызова команды.
-
Cake\Console\ConsoleIo|null$io необязательно Экземпляр ConsoleIo, который следует использовать для выполняемой команды.
Возвращает
int|nullfetchTable() public
fetchTable(string|null $alias = null, array<string, mixed> $options = []): Cake\ORM\Table
Удобный метод для получения экземпляра таблицы.
Параметры
-
string|null$alias необязательно Имя псевдонима, которое вы хотите получить. Должно быть в формате CamelCase. Если
nullто используется значение свойства $defaultTable.-
array<string, mixed>$options необязательно Параметры, которые вы хотите использовать для построения таблицы. Если таблица уже загружена, параметры реестра будут проигнорированы.
Возвращает
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 Ввод-вывод консоли
Возвращает
intgetDescription() public static
getDescription(): string
Получить описание команды.
Возвращает
stringgetModelType() 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 Table по мере необходимости. Также может использоваться для загрузки других типов объектов репозитория, используемых вашим приложением.
Если поставщик репозитория не возвращает объект, будет выброшено исключение MissingModelException.
Параметры
-
string|null$modelClass необязательно Имя класса модели для загрузки. По умолчанию $this->modelClass. Имя может быть псевдонимом, как
'Post'или FQCN, какApp\Model\Table\PostsTable::class.-
string|null$modelType необязательно Тип репозитория для загрузки. По умолчанию значение 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
Установить имя, используемое этой командой в наборе.
Обычно вызывается набором команд при добавлении команды. Требуется, чтобы в имени был хотя бы один пробел, чтобы можно было вычислить корневую команду.
Параметры
-
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 не будет склонять имя.
Пример: Для объекта с именем «Комментарии» имя модели будет «Комментарии». Классы плагинов должны использовать имена в формате 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.4/class-Cake.Command.CompletionCommand.html