Класс HelperRegistry
Регистр для Помощников. Предоставляет возможности для ленивой загрузки помощников.
- Cake\Core\ObjectRegistry implements Countable, IteratorAggregate
-
Cake\Console\HelperRegistry
Краткое описание свойств
- Оболочка для использования для установки параметров задач.
$_ioprotected
Унаследованные свойства
Краткое описание методов
- _create() protectedСоздание экземпляра помощника.
- _resolveClassName() protectedРазрешение имени класса помощника.
- _throwMissingClassError() protectedВыбрасывает исключение, когда помощник отсутствует.
- setIo() publicУстанавливает экземпляр IO, который должен быть передан помощникам оболочки.
Подробное описание методов
_create()source protected
_create( string $class , string $alias , array $settings )
Создание экземпляра помощника.
Часть шаблона метода для Cake\Core\ObjectRegistry::load()
Параметры
- string
$class - Имя класса для создания.
- string
$alias - Алиас помощника.
- array
$settings - Массив настроек для использования помощником.
Возвращает
Cake\Console\HelperСозданный класс помощника.
_resolveClassName()source protected
_resolveClassName( string $class )
Разрешение имени класса помощника.
Будет отдавать предпочтение помощникам, определённым в Command\Helper, по сравнению с помощниками, определёнными в Shell\Helper.
Часть шаблона метода для Cake\Core\ObjectRegistry::load()
Параметры
- string
$class - Частичное имя класса для разрешения.
Возвращает
string|falseЛибо правильное имя класса, либо false.
_throwMissingClassError()source protected
_throwMissingClassError( string $class , string $plugin )
Выбрасывает исключение, когда помощник отсутствует.
Часть шаблона метода для Cake\Core\ObjectRegistry::load() и Cake\Core\ObjectRegistry::unload()
Параметры
- string
$class - Отсутствующий класс.
- string
$plugin - Плагин, в котором отсутствует помощник.
Выбрасывает
Cake\Console\Exception\MissingHelperExceptionsetIo()source public
setIo( Cake\Console\ConsoleIo $io )
Устанавливает экземпляр IO, который должен быть передан помощникам оболочки
Параметры
-
Cake\Console\ConsoleIo$io - Экземпляр io.
Методы, унаследованные от Cake\Core\ObjectRegistry
__get()source public
__get( string $name )
Предоставление публичного доступа для чтения к загруженным объектам.
Параметры
- string
$name - Название свойства для чтения
Возвращает
mixed__isset()source public
__isset( string $name )
Предоставление доступа isset к _loaded.
Параметры
- string
$name - Имя проверяемого объекта.
Возвращает
boolean__set()source public
__set( string $name , mixed $object )
Устанавливает объект.
Параметры
- string
$name - Название свойства для установки.
- mixed
$object - Объект для установки.
__unset()source public
__unset( string $name )
Удаляет объект.
Параметры
- string
$name - Название свойства для удаления.
_checkDuplicate()source protected
_checkDuplicate( string $name , array $config )
Проверка на дублирование загрузки объекта.
Если происходит загрузка дубликата с разными конфигурациями, это является ошибкой, и будет выброшено исключение.
Исключение выбрасывается, так как замена объекта не обновит ссылки, которые другие объекты могут иметь. Кроме того, простое обновление конфигурации во время выполнения не является хорошим вариантом, так как мы можем пропустить важные логику конструктора, зависящие от конфигурации.
Параметры
- string
$name - Имя алиаса в реестре.
- array
$config - Данные конфигурации для нового экземпляра.
Выбрасывает
RuntimeExceptionПри обнаружении дубликата.
count()source public
count( )
Возвращает количество загруженных объектов.
Возвращает
integerРеализация
Countable::count() get()source public
get( string $name )
Получить экземпляр загруженного объекта.
Параметры
- string
$name - Имя объекта.
Возвращает
object|nullЭкземпляр объекта, если загружен, иначе null.
getIterator()source public
getIterator( )
Возвращает итератор массива.
Возвращает
ArrayIteratorРеализация
IteratorAggregate::getIterator() has()source public
has( string $name )
Проверить, загружен ли данный объект.
Параметры
- string
$name - Имя объекта для проверки.
Возвращает
booleanTrue, если объект загружен, иначе 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 вместо.
Параметры
- string
$objectName - Имя/класс объекта для загрузки.
- array
$configoptional [] - Дополнительные настройки для загрузки объекта.
Возвращает
mixedВыбрасывает
ExceptionЕсли класс не найден.
loaded()source public
loaded( )
Получить список загруженных объектов.
Возвращает
arrayСписок имён объектов.
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
Подробности свойств
$_iosource
protected Cake\Console\ConsoleIo
Оболочка для использования для установки параметров в задачи.
© 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.HelperRegistry.html