Spec-Zone.ru › CakePHP 4.3

Класс ServiceProvider

Контейнер ServiceProvider

Пакет поставщиков сервисов объединяет связанные сервисы, помогая организовать зависимости вашего приложения. Они также помогают повысить производительность приложений с множеством сервисов, позволяя отложить регистрацию сервиса до момента необходимости.

Абстрактный
Пространство имён: Cake\Core
Экспериментальный: Ожидаются изменения API в мажорных версиях.

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

  • $container protected
    ?DefinitionContainerInterface
  • $identifier protected
    string
  • $provides protected
    array<string>

    Список идентификаторов сервисов, предоставляемых этим поставщиком.

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

  • boot() public

    Делегирование методу bootstrap()

  • bootstrap() public

    Метод инициализации для ServiceProvider

  • getContainer() public

    Получить контейнер.

  • getIdentifier() public
  • provides() public

    Метод provides позволяет контейнеру узнать, что этот поставщик предоставляет определенный сервис.

  • register() public

    Вызов абстрактного метода services().

  • services() abstract public

    Регистрация сервисов в поставщике.

  • setContainer() public
  • setIdentifier() public

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

boot() public

boot(): void

Делегирование методу bootstrap()

Этот метод оборачивает функцию league/container, так что пользователи могут использовать только интерфейс bootstrap() CakePHP.

Возвращает

void

bootstrap() public

bootstrap(Cake\Core\ContainerInterface $container): void

Метод инициализации для ServiceProviders

Этот метод следует реализовывать, если поставщику сервиса необходимо зарегистрировать дополнительные поставщики сервисов, загрузить файлы конфигурации или выполнить другую работу при добавлении поставщика сервисов в контейнер.

Параметры

Cake\Core\ContainerInterface $container

Контейнер для добавления сервисов.

Возвращает

void

getContainer() public

getContainer(): Cake\Core\ContainerInterface

Получить контейнер.

Фактический тип возвращаемого значения и тип возвращаемого значения, указанный в документации, отличаются, потому что PHP 7.2 не поддерживает сужение типов возвращаемых значений.

Возвращает

Cake\Core\ContainerInterface

getIdentifier() public

getIdentifier(): string

Возвращает

string

provides() public

provides(string $id): bool

Метод provides позволяет контейнеру узнать, что этот поставщик предоставляет определенный сервис.

Каждый сервис, зарегистрированный через этого поставщика, должен иметь псевдоним, добавленный в этот массив, иначе он будет проигнорирован.

Параметры

string $id

Идентификатор.

Возвращает

bool

register() public

register(): void

Вызов абстрактного метода services().

Этот метод в основном служит мостом между интерфейсом league/container и интерфейсом, который мы хотим предложить в CakePHP.

Возвращает

void

services() abstract public

services(Cake\Core\ContainerInterface $container): void

Регистрация сервисов в поставщике.

Все сервисы, зарегистрированные в этом методе, также должны быть включены в свойство $provides, чтобы сервисы можно было найти.

Параметры

Cake\Core\ContainerInterface $container

Контейнер для добавления сервисов.

Возвращает

void

setContainer() public

setContainer(DefinitionContainerInterface $container): ContainerAwareInterface

Параметры

DefinitionContainerInterface $container

Возвращает

ContainerAwareInterface

setIdentifier() public

setIdentifier(string $id): ServiceProviderInterface

Параметры

string $id

Возвращает

ServiceProviderInterface

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

$container protected

Тип

?DefinitionContainerInterface

$identifier protected

Тип

string

$provides protected

Список идентификаторов сервисов, предоставляемых этим поставщиком.

Тип

array<string>

© 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.3/class-Cake.Core.ServiceProvider.html

Spec-Zone.ru

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