Класс TaskRegistry
Регистр задач. Предоставляет возможности для ленивой загрузки задач.
- Cake\Core\ObjectRegistry implements Countable, IteratorAggregate
-
Cake\Console\TaskRegistry
Краткое описание свойств
- Консоль для установки параметров задач.
$_Shellprotected
Унаследованные свойства
Краткое описание методов
- __construct() publicКонструктор
- _create() protectedСоздание экземпляра задачи.
- _resolveClassName() protectedРазрешение имени класса задачи.
- _throwMissingClassError() protectedВыбрасывает исключение при отсутствии задачи.
Подробное описание методов
__construct()source public
__construct( Cake\Console\Shell $Shell )
Конструктор
Параметры
-
Cake\Console\Shell$Shell - Экземпляр консоли
_create()source protected
_create( string $class , string $alias , array $settings )
Создание экземпляра задачи.
Часть шаблона метода Cake\Core\ObjectRegistry::load()
Параметры
- строка
$class - Имя класса для создания.
- строка
$alias - Псевдоним задачи.
- массив
$settings - Массив настроек для задачи.
Возвращает
Cake\Console\ShellСозданный класс задачи.
_resolveClassName()source protected
_resolveClassName( string $class )
Разрешение имени класса задачи.
Часть шаблона метода для Cake\Core\ObjectRegistry::load()
Параметры
- строка
$class - Частичное имя класса для разрешения.
Возвращает
строка|ложьЛибо правильное имя класса, либо ложь.
_throwMissingClassError()source protected
_throwMissingClassError( string $class , string $plugin )
Выбрасывает исключение при отсутствии задачи.
Часть шаблона метода для Cake\Core\ObjectRegistry::load() и Cake\Core\ObjectRegistry::unload()
Параметры
- строка
$class - Отсутствующий класс.
- строка
$plugin - Плагин, в котором отсутствует задача.
Выбрасывает
Cake\Console\Exception\MissingTaskExceptionМетоды, унаследованные от Cake\Core\ObjectRegistry
__get()source public
__get( string $name )
Предоставляет публичный чтение к загруженным объектам
Параметры
- строка
$name - Имя свойства для чтения
Возвращает
смешанное__isset()source public
__isset( string $name )
Предоставляет доступ isset к _loaded
Параметры
- строка
$name - Имя объекта, который проверяется.
Возвращает
булево__set()source public
__set( string $name , mixed $object )
Устанавливает объект.
Параметры
- строка
$name - Имя свойства, которое нужно установить.
- смешанное
$object - Объект для установки.
__unset()source public
__unset( string $name )
Удаляет объект.
Параметры
- строка
$name - Имя свойства, которое нужно удалить.
_checkDuplicate()source protected
_checkDuplicate( string $name , array $config )
Проверка на дублирование загрузки объекта.
Если загружается дубликат с другими конфигурациями, это плохо, и будет вызвано исключение.
Вызывается исключение, так как замена объекта не обновит любые ссылки, которые могут иметь другие объекты. Кроме того, простое обновление конфигурации выполнения не является хорошим вариантом, так как мы можем пропустить важную логику конструктора, зависящую от конфигурации.
Параметры
- строка
$name - Имя псевдонима в реестре.
- массив
$config - Данные конфигурации для нового экземпляра.
Выбрасывает
RuntimeExceptionПри обнаружении дубликата.
count()source public
count( )
Возвращает количество загруженных объектов.
Возвращает
целое числоРеализация
Countable::count() get()source public
get( string $name )
Получить экземпляр загруженного объекта.
Параметры
- строка
$name - Имя объекта.
Возвращает
объект|nullЭкземпляр объекта, если загружен, иначе null.
getIterator()source public
getIterator( )
Возвращает итератор массива.
Возвращает
ArrayIteratorРеализация
IteratorAggregate::getIterator() has()source public
has( string $name )
Проверка, загружен ли данный объект.
Параметры
- строка
$name - Имя объекта для проверки.
Возвращает
булевоИстина, если объект загружен, иначе ложь.
load()source public
load( string $objectName , array $config = [] )
Загрузка/создание экземпляра объекта.
Возвратит экземпляр в реестре, если он уже существует. Если подкласс поддерживает события, вы можете использовать $config['enabled'] = false для исключения созданных объектов из регистрации событий.
Пример с Cake\Controller\Controller::$components. Вы можете задать псевдоним объекта, установив ключ 'className', например:
public $components = [
'Email' => [
'className' => '\App\Controller\Component\AliasedEmailComponent'
];
]; Все вызовы к компоненту Email будут использовать AliasedEmail вместо этого.
Параметры
- строка
$objectName - Имя/класс объекта для загрузки.
- массив
$configoptional [] - Дополнительные настройки для использования при загрузке объекта.
Возвращает
смешанноеВыбрасывает
ИсключениеЕсли класс не найден.
loaded()source public
loaded( )
Получить список загруженных объектов.
Возвращает
массивСписок имён объектов.
normalizeArray()source public
normalizeArray( array $objects )
Нормализует массив объектов, создает массив, который упрощает ленивую загрузку
Параметры
- массив
$objects - Массив дочерних объектов для нормализации.
Возвращает
массивМассив нормализованных объектов.
reset()source public
reset( )
Очищает загруженные экземпляры в реестре.
Если подкласс реестра имеет менеджер событий, объекты также будут отделены от событий.
Возвращает
$this
set()source public
set( string $objectName , object $object )
Непосредственно устанавливает объект в реестр по имени.
Если этот набор реализует события, переданный объект будет прикреплен к менеджеру событий
Параметры
- строка
$objectName - Имя объекта для установки в реестр.
- объект
$object - экземпляр для хранения в реестре
Возвращает
$this
unload()source public
unload( string $objectName )
Удаляет объект из реестра.
Если у этого реестра есть менеджер событий, объект также будет отделен от любых событий.
Параметры
- строка
$objectName - Имя объекта для удаления из реестра.
Возвращает
$this
Подробное описание свойств
© 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/3.6/class-Cake.Console.TaskRegistry.html