Класс PluginLoadCommand
Команда для загрузки плагинов.
Постоянные значения
-
intCODE_ERROR1
Код ошибки по умолчанию
-
intCODE_SUCCESS0
Код успеха по умолчанию
Краткое описание свойств
- $_modelFactories protected
(callableCake\Datasource\Locator\LocatorInterface)[]Список переопределённых функций фабрики моделей.
- $_modelType protected
stringТип модели для использования.
- $_tableLocator protected
Cake\ORM\Locator\LocatorInterface|nullЭкземпляр локатора таблиц
- $args protected
Cake\Console\ArgumentsАргументы
- $io protected
Cake\Console\ConsoleIoВвод-вывод консоли
- $modelClass protected
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
Выполнить другую команду с предоставленным набором аргументов.
-
getModelType() public
Получить тип модели, который будет использоваться этим классом
-
getName() public
Получить имя команды.
-
getOptionParser() public
Получить парсер опций.
-
getRootName() public
Получить имя корневой команды.
-
getTableLocator() public
Получить локатор таблиц.
-
initialize() public
Метод-обработчик, вызываемый CakePHP, когда команда собирается быть выполнена.
-
loadModel() public
Загружает и создаёт объекты репозитория, необходимые этому объекту.
-
log() public
Удобный метод для записи сообщения в журнал. Подробнее о записи в журналы см. Log::write().
-
modelFactory() public
Переопределить существующий вызов для генерации репозиториев заданного типа.
-
modifyApplication() protected
Модифицировать класс приложения.
-
run() public
Запустить команду.
-
setModelType() public
Установить тип модели, который будет использоваться этим классом
-
setName() public
Установить имя, используемое этой командой в коллекции.
-
setOutputLevel() protected
Установить уровень вывода на основе аргументов.
-
setTableLocator() public
Установить локатор таблиц.
Подробное описание методов
__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|null
Выполнить команду
Параметры
-
Cake\Console\Arguments$args Аргументы команды.
-
Cake\Console\ConsoleIo$io Ввод-вывод консоли
Возвращает
int|nullexecuteCommand() public
executeCommand(stringCake\Console\CommandInterface $command, array $args = [], Cake\Console\ConsoleIo $io = null): int|null
Выполнить другую команду с заданным набором аргументов.
Если вы используете строковое имя команды, зависимости этой команды не будут разрешены с контейнером приложения. Вместо этого вам нужно передать команду как объект со всеми ее зависимостями.
Параметры
-
stringCake\Console\CommandInterface$command Имя класса команды или экземпляр команды.
-
array$args optional Аргументы для вызова команды.
-
Cake\Console\ConsoleIo$io optional Экземпляр ConsoleIo для использования в исполняемой команде.
Возвращает
int|nullgetModelType() public
getModelType(): string
Получить тип модели, используемый этим классом
Возвращает
stringgetName() public
getName(): string
Получить имя команды.
Возвращает
stringgetOptionParser() public
getOptionParser(): Cake\Console\ConsoleOptionParser
Получить парсер опций.
Вы можете переопределить buildOptionParser() для определения ваших опций и аргументов.
Возвращает
Cake\Console\ConsoleOptionParserВызывает
RuntimeExceptionПри некорректном парсере
getRootName() public
getRootName(): string
Получить имя корневой команды.
Возвращает
stringgetTableLocator() 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 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, int|string $level = LogLevel::ERROR, string|array $context = []): bool
Удобный метод для записи сообщения в журнал. См. Log::write() для получения дополнительной информации о записи в журналы.
Параметры
-
string$message Сообщение журнала.
-
int|string$level optional Уровень ошибки.
-
string|array$context optional Дополнительные данные журнала, относящиеся к этому сообщению.
Возвращает
boolmodelFactory() public
modelFactory(string $type, callableCake\Datasource\Locator\LocatorInterface $factory): void
Переопределить существующую вызываемую функцию для генерации репозиториев заданного типа.
Параметры
-
string$type Название типа репозитория, для которого предназначена функция фабрики.
-
callableCake\Datasource\Locator\LocatorInterface$factory Функция фабрики, используемая для создания экземпляров.
Возвращает
voidmodifyApplication() protected
modifyApplication(string $app, string $plugin): void
Изменить класс приложения
Параметры
-
string$app Файл приложения для изменения.
-
string$plugin Имя плагина для добавления.
Возвращает
voidrun() public
run(array $argv, Cake\Console\ConsoleIo $io): int|null
Запустить команду.
Параметры
-
array$argv -
Cake\Console\ConsoleIo$io
Возвращает
int|nullsetModelType() 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 IO консоли.
Возвращает
voidsetTableLocator() public
setTableLocator(Cake\ORM\Locator\LocatorInterface $tableLocator): $this
Устанавливает локатор таблицы.
Параметры
-
Cake\ORM\Locator\LocatorInterface$tableLocator Объект LocatorInterface.
Возвращает
$thisПодробное описание свойств
$_modelFactories protected
Список переопределённых функций фабрики моделей.
Тип
(callableCake\Datasource\Locator\LocatorInterface)[]$_modelType protected
Тип модели для использования.
Тип
string$_tableLocator protected
Объект локатора таблицы.
Тип
Cake\ORM\Locator\LocatorInterface|null$args protected
Аргументы.
Тип
Cake\Console\Arguments$io protected
IO консоли.
Тип
Cake\Console\ConsoleIo$modelClass protected
Основной класс модели для этого объекта. Должен быть во множественном числе. CakePHP не будет изменять имя.
Пример: Для объекта с именем «Комментарии», modelClass будет «Комментарии». Классы плагинов должны использовать имена в стиле 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.2/class-Cake.Command.PluginLoadCommand.html