Класс 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 Экземпляр оболочки
__debugInfo() public
__debugInfo(): array<string, mixed>
Свойства объекта для отладки.
Возвращает
array<string, mixed>__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<string, mixed> $config): void
Проверка на дублирование загрузки объекта.
Если загружается дубликат с различной конфигурацией, это плохо, и будет поднято исключение.
Исключение поднимается, так как замена объекта не обновит ссылки, которые могут иметь другие объекты. Кроме того, простое обновление конфигурации выполнения не является хорошим вариантом, так как мы можем пропустить важную логику конструктора, зависящую от конфигурации.
Параметры
-
string$name Имя псевдонима в реестре.
-
array<string, mixed>$config Данные конфигурации для нового экземпляра.
Возвращает
voidИсключение
RuntimeExceptionПри обнаружении дубликата.
_create() protected
_create(object|string $class, string $alias, array<string, mixed> $config): Cake\Console\Shell
Создать экземпляр задачи.
Часть шаблона для Cake\Core\ObjectRegistry::load()
Параметры
-
object|string$class Имя класса для создания.
-
string$alias Псевдоним задачи.
-
array<string, mixed>$config Массив настроек для задачи.
Возвращает
Cake\Console\Shell_resolveClassName() protected
_resolveClassName(string $class): string|null
Разрешить имя класса задачи.
Часть шаблона для {@link \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<string, mixed> $config = []): mixed
Загрузка/создание экземпляра объекта.
Вернет экземпляр в реестре, если он уже существует. Если подкласс предоставляет поддержку событий, вы можете использовать $config['enabled'] = false для исключения зарегистрированных для событий сконструированных объектов.
Пример с {@link \Cake\Controller\Component::$components}. Вы можете назначить псевдоним объекту, установив ключ 'className', например:
protected $components = [
'Email' => [
'className' => 'App\Controller\Component\AliasedEmailComponent'
];
]; Все вызовы компонента Email будут использовать AliasedEmail вместо него.
Параметры
-
string$name Имя/класс объекта для загрузки.
-
array<string, mixed>$config optional Дополнительные параметры для загрузки объекта.
Возвращает
mixedИсключение
ExceptionЕсли класс не найден.
loaded() public
loaded(): array<string>
Получить список загруженных объектов.
Возвращает
array<string>normalizeArray() public
normalizeArray(array $objects): array<string, array>
Нормализует массив объектов, создает массив, который упрощает ленивую загрузку
Параметры
-
array$objects Массив дочерних объектов для нормализации.
Возвращает
array<string, 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 защищенное
Карта загруженных объектов.
Тип
array<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.3/class-Cake.Console.TaskRegistry.html