Класс ServiceProvider
Контейнер ServiceProvider
Пакет поставщиков сервисов объединяет связанные сервисы, помогая организовать зависимости вашего приложения. Они также помогают улучшить производительность приложений с множеством сервисов, позволяя отложить регистрацию сервисов до момента необходимости.
Пространство имен: Cake\Core
Экспериментальный: Ожидайте изменений API в незначительных выпусках.
Краткое описание свойств
- $container защищённый
ContainerInterface - $identifier защищённый
string - $leagueContainer защищённый
Container - $provides защищённый
array
Краткое описание методов
-
boot() общедоступный
Делегирование методу bootstrap()
-
bootstrap() общедоступный
Вспомогательный метод для ServiceProviders
-
getContainer() общедоступный
Получение контейнера.
-
getIdentifier() общедоступный
Идентификатор поставщика сервисов уникально его идентифицирует, позволяя быстро определить, был ли он уже зарегистрирован. По умолчанию устанавливается значение get_class($provider).
-
getLeagueContainer() общедоступный
Получение контейнера. Эта функция будет удалена в пользу getContainer, возвращающего Container в следующей основной версии.
-
provides() общедоступный
Возвращает boolean, если проверяется, предоставляет ли этот поставщик определённый сервис, или массив предоставляемых сервисов, если аргумент не передан.
-
register() общедоступный
Вызов абстрактного метода services().
-
services() абстрактный общедоступный
Регистрация сервисов в поставщике.
-
setContainer() общедоступный
Установка контейнера
-
setIdentifier() общедоступный
Установка пользовательского идентификатора для поставщика сервисов. Это позволяет регистрировать одного и того же поставщика сервисов несколько раз.
-
setLeagueContainer() общедоступный
Установка контейнера. Эта функция будет удалена в пользу setContainer, принимающего Container в следующей основной версии.
Подробное описание методов
boot() общедоступный
boot(): void
Делегирование методу bootstrap()
Этот метод оборачивает функцию league/container, чтобы пользователи могли использовать только интерфейс bootstrap CakePHP.
Возвращает
voidbootstrap() общедоступный
bootstrap(Cake\Core\ContainerInterface $container): void
Вспомогательный метод для ServiceProviders
Этот метод должен быть реализован, если вашему поставщику сервисов необходимо зарегистрировать дополнительные поставщики сервисов, загрузить файлы конфигурации или выполнить любые другие операции при добавлении поставщика сервисов в контейнер.
Параметры
-
Cake\Core\ContainerInterface$container Контейнер, в который нужно добавить сервисы.
Возвращает
voidgetContainer() общедоступный
getContainer(): Cake\Core\ContainerInterface
Получение контейнера.
Фактический тип возвращаемого значения этого метода и документированный тип возвращаемого значения отличаются, потому что PHP 7.2 не поддерживает сужение типа возвращаемого значения.
Возвращает
Cake\Core\ContainerInterfacegetIdentifier() общедоступный
getIdentifier(): string
Идентификатор поставщика сервисов уникально его идентифицирует, позволяя быстро определить, был ли он уже зарегистрирован. По умолчанию устанавливается значение get_class($provider).
Возвращает
stringgetLeagueContainer() общедоступный
getLeagueContainer(): Container
Получение контейнера. Эта функция будет удалена в пользу getContainer, возвращающего Container в следующей основной версии.
Возвращает
Containerprovides() общедоступный
provides(string $service): boolean
Возвращает boolean, если проверяется, предоставляет ли этот поставщик определённый сервис, или массив предоставляемых сервисов, если аргумент не передан.
Параметры
-
string$service
Возвращает
booleanregister() общедоступный
register(): void
Вызов абстрактного метода services().
Этот метод в основном существует как шлюз между интерфейсом league/container и интерфейсом, который мы хотим предложить в CakePHP.
Возвращает
voidservices() абстрактный общедоступный
services(Cake\Core\ContainerInterface $container): void
Регистрация сервисов в поставщике.
Все сервисы, зарегистрированные в этом методе, также должны быть включены в свойство $provides, чтобы сервисы могли быть найдены.
Параметры
-
Cake\Core\ContainerInterface$container Контейнер, в который нужно добавить сервисы.
Возвращает
voidsetContainer() общедоступный
setContainer(ContainerInterface $container): self
Установка контейнера
Параметры
-
ContainerInterface$container
Возвращает
selfsetIdentifier() общедоступный
setIdentifier(string $id): self
Установка пользовательского идентификатора для поставщика сервисов. Это позволяет регистрировать одного и того же поставщика сервисов несколько раз.
Параметры
-
string$id
Возвращает
selfsetLeagueContainer() общедоступный
setLeagueContainer(Container $container): self
Установка контейнера. Эта функция будет удалена в пользу setContainer, принимающего Container в следующей основной версии.
Параметры
-
Container$container
Возвращает
selfПодробное описание свойств
$container защищённый
Тип
ContainerInterface$identifier защищённый
Тип
string$leagueContainer защищённый
Тип
Container$provides защищённый
Тип
array
© 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.Core.ServiceProvider.html