Класс ConnectionRegistry
Объект реестра для экземпляров подключений.
- Cake\Core\ObjectRegistry implements Countable, IteratorAggregate
-
Cake\Datasource\ConnectionRegistry
См.:
Cake\Datasource\ConnectionManagerРасположение: Datasource/ConnectionRegistry.php
Унаследованные свойства
Краткое описание методов
- _create() protectedСоздать объект подключения с правильными настройками.
- _resolveClassName() protectedРазрешить имя класса источника данных.
- _throwMissingClassError() protectedВыбрасывает исключение, когда источник данных отсутствует
- unload() publicУдалить единственный адаптер из реестра.
Подробное описание методов
_create()source protected
_create( string|object|callable $class , string $alias , array $settings )
Создать объект подключения с правильными настройками.
Часть шаблона метода для Cake\Core\ObjectRegistry::load()
Если в качестве первого аргумента передаётся вызываемый объект, возвращаемое значение этой функции будет результатом вызова этого объекта.
Параметры
- string|object|callable
$class - Имя класса или объект для создания.
- string
$alias - Псевдоним объекта.
- array
$settings - Массив настроек для использования источника данных.
Возвращает
objectПодключение с правильными настройками.
_resolveClassName()source protected
_resolveClassName( string $class )
Разрешить имя класса источника данных.
Часть шаблона метода для Cake\Core\ObjectRegistry::load()
Параметры
- string
$class - Частичное имя класса для разрешения.
Возвращает
string|falseЛибо правильное имя класса, либо false.
_throwMissingClassError()source protected
_throwMissingClassError( string $class , string $plugin )
Выбрасывает исключение, когда источник данных отсутствует
Часть шаблона метода для Cake\Core\ObjectRegistry::load()
Параметры
- string
$class - Имя отсутствующего класса.
- string
$plugin - Плагин, в котором отсутствует источник данных.
Выбрасывает
Cake\Datasource\Exception\MissingDatasourceExceptionunload()source public
unload( string $name )
Удалить единственный адаптер из реестра.
Параметры
- string
$name - Имя адаптера.
Переопределяет
Cake\Core\ObjectRegistry::unload() Методы, унаследованные от 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 [] - Дополнительные настройки для использования при загрузке объекта.
Возвращает
mixedloaded()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
© 2005–2018 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.5/class-Cake.Datasource.ConnectionRegistry.html