Класс 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 - Частичное имя класса для разрешения.
Возвращаемое значение
string|falseЛибо правильное имя класса, либо false.
_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
__debugInfo()source public
__debugInfo( )
Свойства объекта для отладки.
Возвращаемое значение
массив__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 - Имя объекта для проверки.
Возвращаемое значение
логическое значениеTrue, если объект загружен, иначе false.
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
Подробности свойств
$_Shellsource
protected Cake\Console\Shell
Оболочка, используемая для установки параметров для задач.
© 2005–2017 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.4/class-Cake.Console.TaskRegistry.html