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