Spec-Zone.ru › CakePHP 4.4

Класс CommandRunner

Выполнить команды CLI для предоставленного приложения.

Пространство имён: Cake\Console

Краткое описание свойств

  • $_eventClass protected
    string

    Имя по умолчанию класса для новых объектов событий.

  • $_eventManager protected
    Cake\Event\EventManagerInterface|null

    Экземпляр Cake\Event\EventManager, используемый этим объектом для отправки внутренних событий.

  • $aliases protected
    array<string>

    Сопоставления псевдонимов.

  • $app protected
    Cake\Core\ConsoleApplicationInterface

    Приложение, для которого выполняются командные консольные команды.

  • $factory protected
    Cake\Console\CommandFactoryInterface|null

    Приложение, для которого выполняются командные консольные команды.

  • $root protected
    string

    Имя корневой команды. По умолчанию cake.

Краткое описание методов

  • __construct() public

    Конструктор

  • bootstrap() protected

    Обёртка запуска приложения.

  • createCommand() protected

    Обёртка для создания экземпляров оболочек.

  • dispatchEvent() public

    Обёртка для создания и отправки событий.

  • getCommand() protected

    Получить экземпляр оболочки для заданного имени команды

  • getEventManager() public

    Получить менеджер событий приложения или глобальный менеджер.

  • loadRoutes() protected

    Убедиться, что маршруты приложения загружены.

  • longestCommandName() protected

    Построение самого длинного имени команды, которое существует в коллекции

  • resolveName() protected

    Разрешить имя команды в имя, которое существует в коллекции.

  • run() public

    Выполнить команду, содержащуюся в $argv.

  • runCommand() protected

    Выполнить класс команды.

  • runShell() protected

    Выполнить класс оболочки.

  • setAliases() public

    Заменить весь массив псевдонимов для исполнителя.

  • setEventManager() public

    Получить/установить менеджер событий приложения.

Подробное описание методов

__construct() public

__construct(Cake\Core\ConsoleApplicationInterface $app, string $root = 'cake', Cake\Console\CommandFactoryInterface|null $factory = null)

Конструктор

Параметры

Cake\Core\ConsoleApplicationInterface $app

Приложение, для которого выполняются команды CLI.

string $root необязательный

Имя корневой команды, которое должно быть удалено из argv.

Cake\Console\CommandFactoryInterface|null $factory необязательный

Экземпляр фабрики команд.

bootstrap() protected

bootstrap(): void

Обёртка для инициализации приложения.

Вызывает bootstrap() хук приложения. После приложения подключаются плагины.

Возвращает

void

createCommand() protected

createCommand(string $className, Cake\Console\ConsoleIo $io): Cake\Console\CommandInterfaceCake\Console\Shell

Обёртка для создания экземпляров оболочки.

Параметры

string $className

Имя класса оболочки.

Cake\Console\ConsoleIo $io

Обёртка ввода-вывода для созданного класса оболочки.

Возвращает

Cake\Console\CommandInterfaceCake\Console\Shell

dispatchEvent() public

dispatchEvent(string $name, array|null $data = null, object|null $subject = null): Cake\Event\EventInterface

Обёртка для создания и отправки событий.

Возвращает обработанное событие.

Параметры

string $name

Имя события.

array|null $data необязательный

Любое значение, которое вы хотите передать вместе с этим событием, его могут прочитать слушатели.

object|null $subject необязательный

Объект, к которому относится это событие ($this по умолчанию).

Возвращает

Cake\Event\EventInterface

getCommand() protected

getCommand(Cake\Console\ConsoleIo $io, Cake\Console\CommandCollection $commands, string $name): Cake\Console\CommandInterfaceCake\Console\Shell

Получить экземпляр оболочки для заданного имени команды

Параметры

Cake\Console\ConsoleIo $io

Обёртка ввода-вывода для созданного класса оболочки.

Cake\Console\CommandCollection $commands

Коллекция команд для поиска оболочки в ней.

string $name

Имя команды для поиска

Возвращает

Cake\Console\CommandInterfaceCake\Console\Shell

getEventManager() public

getEventManager(): Cake\Event\EventManagerInterface

Получить менеджер событий приложения или глобальный.

Вы можете использовать этот экземпляр для регистрации новых слушателей или обратных вызовов для событий объекта, или создавать свои собственные события и запускать их по своему желанию.

Возвращает

Cake\Event\EventManagerInterface

loadRoutes() protected

loadRoutes(): void

Убедиться, что маршруты приложения загружены.

Команды консоли и оболочки часто должны генерировать URL-адреса.

Возвращает

void

longestCommandName() protected

longestCommandName(Cake\Console\CommandCollection $commands, array $argv): array

Построить самое длинное имя команды, которое существует в коллекции

Построить самое длинное имя команды, которое соответствует определенной команде. Это будет проходить не более чем по 3 токенам.

Параметры

Cake\Console\CommandCollection $commands

Коллекция команд для проверки.

array $argv

Аргументы CLI.

Возвращает

array

resolveName() protected

resolveName(Cake\Console\CommandCollection $commands, Cake\Console\ConsoleIo $io, string|null $name): string

Преобразовать имя команды в имя, которое существует в коллекции.

Применить обратные совместимые изменения и псевдонимы. Будет проходить до 3 токенов в $argv для генерации имени команды в CommandCollection. Более конкретные имена команд имеют приоритет над менее конкретными.

Параметры

Cake\Console\CommandCollection $commands

Коллекция команд для проверки.

Cake\Console\ConsoleIo $io

Объект ConsoleIo для ошибок.

string|null $name

Имя из аргументов CLI.

Возвращает

string

Исключения

Cake\Console\Exception\MissingOptionException

run() public

run(array $argv, Cake\Console\ConsoleIo|null $io = null): int

Запустить команду, содержащуюся в $argv.

Используйте приложение для выполнения следующих действий:

  • Инициализировать приложение
  • Создать CommandCollection, используя хук console() в приложении.
  • Запустить событие Console.buildCommands автоматической подгрузки плагинов.
  • Запустить запрошенную команду.

Параметры

array $argv

Аргументы из среды CLI.

Cake\Console\ConsoleIo|null $io необязательный

Экземпляр ConsoleIo. Используется в основном для тестирования.

Возвращает

int

Исключения

RuntimeException

runCommand() protected

runCommand(Cake\Console\CommandInterface $command, array $argv, Cake\Console\ConsoleIo $io): int|null

Выполнить класс Command.

Параметры

Cake\Console\CommandInterface $command

Команда для выполнения.

array $argv

Аргументы CLI для вызова.

Cake\Console\ConsoleIo $io

Обёртка ввода-вывода консоли

Возвращает

int|null

runShell() protected

runShell(Cake\Console\Shell $shell, array $argv): int|bool|null

Выполнить класс Shell.

Параметры

Cake\Console\Shell $shell

Оболочка для выполнения.

array $argv

Аргументы CLI для вызова.

Возвращает

int|bool|null

setAliases() public

setAliases(array<string> $aliases): $this

Заменить весь набор псевдонимов для исполнителя.

Псевдонимы позволяют определить альтернативные имена для команд в коллекции. Это может быть полезно для добавления верхнеуровневых переключателей, таких как --version или -h.

Использование

$runner->setAliases(['--version' => 'version']);

Параметры

array<string> $aliases

Карта псевдонимов для замены.

Возвращает

$this

setEventManager() public

setEventManager(Cake\Event\EventManagerInterface $eventManager): $this

Получить/установить менеджер событий приложения.

Если приложение не поддерживает события, и этот метод используется как установщик, будет выброшено исключение.

Параметры

Cake\Event\EventManagerInterface $eventManager

Менеджер событий для установки.

Возвращает

$this

Исключения

InvalidArgumentException

Подробное описание свойств

$_eventClass protected

Имя класса по умолчанию для новых объектов события.

Тип

string

$_eventManager protected

Экземпляр Cake\Event\EventManager, который используется этим объектом для отправки внутренних событий.

Тип

Cake\Event\EventManagerInterface|null

$aliases protected

Сопоставления псевдонимов.

Тип

array<string>

$app protected

Приложение, для которого выполняются команды консоли.

Тип

Cake\Core\ConsoleApplicationInterface

$factory protected

Приложение, для которого выполняются команды консоли.

Тип

Cake\Console\CommandFactoryInterface|null

$root protected

Имя корневой команды. По умолчанию cake.

Тип

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.Console.CommandRunner.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API