Spec-Zone.ru › CakePHP 4.2

Класс ConnectionRegistry

Объект реестра для экземпляров подключений.

Пространство имён: Cake\Datasource
См.: \Cake\Datasource\ConnectionManager

Краткое описание свойств

  • $_loaded protected
    object[]

    Карта загруженных объектов.

Краткое описание методов

  • __debugInfo() public

    Свойства объекта для отладки.

  • __get() public

    Обеспечение открытого чтения загруженных объектов.

  • __isset() public

    Обеспечение доступа isset к _loaded.

  • __set() public

    Устанавливает объект.

  • __unset() public

    Удаляет объект.

  • _checkDuplicate() protected

    Проверка на дублирование загрузки объектов.

  • _create() protected

    Создание объекта подключения с правильными настройками.

  • _resolveClassName() protected

    Разрешение имени класса источника данных.

  • _throwMissingClassError() protected

    Выбрасывает исключение, если источник данных отсутствует.

  • count() public

    Возвращает количество загруженных объектов.

  • get() public

    Получение загруженного экземпляра объекта.

  • getIterator() public

    Возвращает итератор массива.

  • has() public

    Проверка наличия заданного объекта.

  • load() public

    Загрузка/создание экземпляра объекта.

  • loaded() public

    Получение списка загруженных объектов.

  • normalizeArray() public

    Нормализует массив объектов, создаёт массив, упрощающий ленивую загрузку.

  • reset() public

    Очистка загруженных экземпляров в реестре.

  • set() public

    Установка объекта напрямую в реестр по имени.

  • unload() public

    Удаление одного адаптера из реестра.

Подробное описание методов

__debugInfo() public

__debugInfo(): array

Свойства объекта для отладки.

Возвращает

array

__get() public

__get(string $name): object|null

Предоставляет общедоступный чтение загруженных объектов.

Параметры

string $name

Имя свойства для чтения.

Возвращает

object|null

__isset() public

__isset(string $name): bool

Предоставляет доступ isset к _loaded.

Параметры

string $name

Имя проверяемого объекта.

Возвращает

bool

__set() public

__set(string $name, object $object): void

Устанавливает объект.

Параметры

string $name

Имя свойства для установки.

object $object

Устанавливаемый объект.

Возвращает

void

__unset() public

__unset(string $name): void

Удаляет объект.

Параметры

string $name

Имя свойства для удаления.

Возвращает

void

_checkDuplicate() protected

_checkDuplicate(string $name, array $config): void

Проверка на дублирование загруженных объектов.

Если загружается дубликат с другим конфигурацией, будет выброшено исключение.

Исключение выбрасывается, так как замена объекта не обновит ссылки, которые могут иметь другие объекты. Кроме того, простое обновление конфигурации в runtime — не лучший вариант, так как мы можем пропустить важные логику конструктора, зависящие от конфигурации.

Параметры

string $name

Имя псевдонима в реестре.

array $config

Данные конфигурации для нового экземпляра.

Возвращает

void

Исключения

RuntimeException
При обнаружении дубликата.

_create() protected

_create(string|object $class, string $alias, array $config): Cake\Datasource\ConnectionInterface

Создает объект подключения с правильными настройками.

Часть шаблона метода для Cake\Core\ObjectRegistry::load()

Если в качестве первого аргумента передается вызываемый объект, возвращаемое значение этой функции будет результатом вызова этого объекта.

Параметры

string|object $class

Имя класса или объект для создания.

string $alias

Псевдоним объекта.

array $config

Массив настроек для использования в источнике данных.

Возвращает

Cake\Datasource\ConnectionInterface

_resolveClassName() protected

_resolveClassName(string $class): string|null

Разрешение имени класса источника данных.

Часть шаблона метода для Cake\Core\ObjectRegistry::load()

Параметры

string $class

Частичное имя класса для разрешения.

Возвращает

string|null

_throwMissingClassError() protected

_throwMissingClassError(string $class, string|null $plugin): void

Выбрасывает исключение, когда источник данных отсутствует.

Часть шаблона метода для Cake\Core\ObjectRegistry::load()

Параметры

string $class

Имя класса, которого нет.

string|null $plugin

Плагин, в котором отсутствует источник данных.

Возвращает

void

Исключения

Cake\Datasource\Exception\MissingDatasourceException

count() public

count(): int

Возвращает количество загруженных объектов.

Возвращает

int

get() public

get(string $name): object

Получение экземпляра загруженного объекта.

Параметры

string $name

Имя объекта.

Возвращает

object

Исключения

RuntimeException
Если объект не загружен или не найден.

getIterator() public

getIterator(): Traversable

Возвращает итератор массива.

Возвращает

Traversable

has() public

has(string $name): bool

Проверка наличия загруженного объекта.

Параметры

string $name

Имя проверяемого объекта.

Возвращает

bool

load() public

load(string $name, array $config = []): mixed

Загрузка/создание экземпляра объекта.

Вернет экземпляр из реестра, если он уже существует. Если подкласс поддерживает события, можно использовать $config['enabled'] = false для исключения созданных объектов из регистрации событий.

Например, используя Cake\Controller\Controller::$components. Можно задать псевдоним объекта, установив ключ 'className', например:

protected $components = [
  'Email' => [
    'className' => 'App\Controller\Component\AliasedEmailComponent'
  ];
];

Все вызовы компонента Email будут использовать AliasedEmail.

Параметры

string $name

Имя/класс объекта для загрузки.

array $config optional

Дополнительные настройки для загрузки объекта.

Возвращает

mixed

Исключения

Exception
Если класс не найден.

loaded() public

loaded(): string[]

Получение списка загруженных объектов.

Возвращает

string[]

normalizeArray() public

normalizeArray(array $objects): array[]

Нормализует массив объектов, создаёт массив, что упрощает ленивую загрузку.

Параметры

array $objects

Массив дочерних объектов для нормализации.

Возвращает

array[]

reset() public

reset(): $this

Очищает загруженные экземпляры в реестре.

Если подкласс реестра имеет менеджер событий, объекты также будут отвязаны от событий.

Возвращает

$this

set() public

set(string $name, object $object): $this

Непосредственно устанавливает объект в реестр по имени.

Если эта коллекция реализует события, переданный объект будет подключен к менеджеру событий.

Параметры

string $name

Имя объекта для установки в реестре.

object $object

экземпляр для хранения в реестре

Возвращает

$this

unload() public

unload(string $name): $this

Удаление одного адаптера из реестра.

Если этот реестр имеет менеджер событий, объект также будет отсоединен от всех событий.

Параметры

string $name

Имя адаптера.

Возвращает

$this

Подробное описание свойств

$_loaded protected

Карта загруженных объектов.

Тип

object[]

© 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/4.2/class-Cake.Datasource.ConnectionRegistry.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API