Класс 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.
Возвращает
voidbootstrap() public
bootstrap(Cake\Core\ContainerInterface $container): void
Метод инициализации для ServiceProviders
Этот метод следует реализовывать, если поставщику сервиса необходимо зарегистрировать дополнительные поставщики сервисов, загрузить файлы конфигурации или выполнить другую работу при добавлении поставщика сервисов в контейнер.
Параметры
-
Cake\Core\ContainerInterface$container Контейнер для добавления сервисов.
Возвращает
voidgetContainer() public
getContainer(): Cake\Core\ContainerInterface
Получить контейнер.
Фактический тип возвращаемого значения и тип возвращаемого значения, указанный в документации, отличаются, потому что PHP 7.2 не поддерживает сужение типов возвращаемых значений.
Возвращает
Cake\Core\ContainerInterfacegetIdentifier() public
getIdentifier(): string
Возвращает
stringprovides() public
provides(string $id): bool
Метод provides позволяет контейнеру узнать, что этот поставщик предоставляет определенный сервис.
Каждый сервис, зарегистрированный через этого поставщика, должен иметь псевдоним, добавленный в этот массив, иначе он будет проигнорирован.
Параметры
-
string$id Идентификатор.
Возвращает
boolregister() public
register(): void
Вызов абстрактного метода services().
Этот метод в основном служит мостом между интерфейсом league/container и интерфейсом, который мы хотим предложить в CakePHP.
Возвращает
voidservices() abstract public
services(Cake\Core\ContainerInterface $container): void
Регистрация сервисов в поставщике.
Все сервисы, зарегистрированные в этом методе, также должны быть включены в свойство $provides, чтобы сервисы можно было найти.
Параметры
-
Cake\Core\ContainerInterface$container Контейнер для добавления сервисов.
Возвращает
voidsetContainer() public
setContainer(DefinitionContainerInterface $container): ContainerAwareInterface
Параметры
-
DefinitionContainerInterface$container
Возвращает
ContainerAwareInterfacesetIdentifier() 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