Класс TaskRegistry
Реестр задач. Предоставляет функции для ленивой загрузки задач.
Краткое описание свойств
Краткое описание методов
-
__construct() public
Конструктор
-
__debugInfo() public
Свойства объекта для отладки.
-
__get() public
Предоставление публичного чтения загруженных объектов
-
__isset() public
Предоставление доступа isset к _loaded
-
__set() public
Устанавливает объект.
-
__unset() public
Удаляет объект.
-
_checkDuplicate() protected
Проверка на дублирование загрузки объектов.
-
_create() protected
Создание экземпляра задачи.
-
_resolveClassName() protected
Разрешение имени класса задачи.
-
_throwMissingClassError() protected
Выбрасывает исключение при отсутствии задачи.
-
count() public
Возвращает количество загруженных объектов.
-
get() public
Получить экземпляр загруженного объекта.
-
getIterator() public
Возвращает итератор массива.
-
has() public
Проверка загрузки данного объекта.
-
load() public
Загрузка/создание экземпляра объекта.
-
loaded() public
Получить список загруженных объектов.
-
normalizeArray() public
Нормализует массив объектов, создаёт массив, облегчающий ленивую загрузку
-
reset() public
Очистить загруженные экземпляры в реестре.
-
set() public
Установить объект напрямую в реестр по имени.
-
unload() public
Удалить объект из реестра.
Подробное описание методов
__construct() public
__construct(Cake\Console\Shell $shell)
Конструктор
Параметры
-
Cake\Console\Shell$shell Экземпляр Shell
__debugInfo() public
__debugInfo(): array
Свойства объекта для удобной отладки.
Возвращает
array__get() public
__get(string $name): object|null
Предоставляет публичный доступ для чтения к загруженным объектам
Параметры
-
string$name Имя свойства для чтения
Возвращает
object|null__isset() public
__isset(string $name): bool
Предоставляет доступ isset к _loaded
Параметры
-
string$name Имя проверяемого объекта.
Возвращает
bool__set() public
__set(string $name, object $object): void
Устанавливает объект.
Параметры
-
string$name Имя устанавливаемого свойства.
-
object$object Устанавливаемый объект.
Возвращает
void__unset() public
__unset(string $name): void
Сбрасывает объект.
Параметры
-
string$name Имя свойства для сброса.
Возвращает
void_checkDuplicate() protected
_checkDuplicate(string $name, array $config): void
Проверка на дублирование загрузки объекта.
Если загружается дубликат с другой конфигурацией, это плохо, и будет выброшено исключение.
Исключение вызывается, поскольку замена объекта не обновит ссылки, которые могут быть у других объектов. Кроме того, простое обновление конфигурации во время выполнения — не очень хороший вариант, поскольку мы можем пропустить важную логику конструктора, зависящую от конфигурации.
Параметры
-
string$name Имя псевдонима в реестре.
-
array$config Данные конфигурации для нового экземпляра.
Возвращает
voidВызывает исключение
RuntimeExceptionКогда найден дубликат.
_create() protected
_create(string|object $class, string $alias, array $config): Cake\Console\Shell
Создает экземпляр задачи.
Часть шаблонного метода для Cake\Core\ObjectRegistry::load()
Параметры
-
string|object$class Имя класса для создания.
-
string$alias Псевдоним задачи.
-
array$config Массив настроек для использования в задаче.
Возвращает
Cake\Console\Shell_resolveClassName() protected
_resolveClassName(string $class): string|null
Разрешает имя класса задачи.
Часть шаблонного метода для Cake\Core\ObjectRegistry::load()
Параметры
-
string$class Частичное имя класса для разрешения.
Возвращает
string|null_throwMissingClassError() protected
_throwMissingClassError(string $class, string|null $plugin): void
Вызывает исключение, когда задача отсутствует.
Часть шаблонного метода для Cake\Core\ObjectRegistry::load() и Cake\Core\ObjectRegistry::unload()
Параметры
-
string$class Отсутствующее имя класса.
-
string|null$plugin Плагин, в котором отсутствует задача.
Возвращает
voidВызывает исключение
Cake\Console\Exception\MissingTaskExceptioncount() public
count(): int
Возвращает количество загруженных объектов.
Возвращает
intget() public
get(string $name): object
Получает загруженный экземпляр объекта.
Параметры
-
string$name Имя объекта.
Возвращает
objectВызывает исключение
RuntimeExceptionЕсли объект не загружен или не найден.
getIterator() public
getIterator(): Traversable
Возвращает итератор массива.
Возвращает
Traversablehas() public
has(string $name): bool
Проверяет, загружен ли данный объект.
Параметры
-
string$name Имя объекта для проверки.
Возвращает
boolload() public
load(string $name, array $config = []): mixed
Загружает/создает экземпляр объекта.
Вернет экземпляр в реестре, если он уже существует. Если подкласс поддерживает события, вы можете использовать $config['enabled'] = false для исключения созданных объектов из регистрации событий.
В качестве примера рассмотрим Cake\Controller\Controller::$components. Вы можете создать псевдоним объекта, установив ключ 'className', например:
protected $components = [
'Email' => [
'className' => 'App\Controller\Component\AliasedEmailComponent'
];
]; Все вызовы компонента Email будут использовать AliasedEmail вместо этого.
Параметры
-
string$name Имя/класс объекта для загрузки.
-
array$config optional Дополнительные настройки для использования при загрузке объекта.
Возвращает
mixedВызывает исключение
ExceptionЕсли класс не найден.
loaded() public
loaded(): string[]
Получает список загруженных объектов.
Возвращает
string[]normalizeArray() public
normalizeArray(array $objects): array[]
Нормализует массив объектов, создает массив, который упрощает ленивую загрузку
Параметры
-
array$objects Массив дочерних объектов для нормализации.
Возвращает
array[]reset() public
reset(): $this
Очищает загруженные экземпляры в реестре.
Если подкласс реестра имеет менеджер событий, объекты также будут отсоединены от событий.
Возвращает
$thisset() public
set(string $name, object $object): $this
Устанавливает объект непосредственно в реестр по имени.
Если эта коллекция реализует события, переданный объект будет прикреплен к менеджеру событий
Параметры
-
string$name Имя объекта для установки в реестр.
-
object$object Экземпляр для хранения в реестре
Возвращает
$thisunload() public
unload(string $name): $this
Удаляет объект из реестра.
Если этот реестр имеет менеджер событий, объект также будет отсоединен от любых событий.
Параметры
-
string$name Имя объекта для удаления из реестра.
Возвращает
$thisПодробное описание свойства
$_Shell защищенное
Оболочка для установки параметров задач.
Тип
Cake\Console\Shell$_loaded защищенное
Карта загруженных объектов.
Тип
object[]
© 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.Console.TaskRegistry.html