Я потратил немного времени, пытаясь проследить путь через код и документацию ZF2, но я не могу найти объяснения способа расширения конфигурации с помощью глобальной конфигурации для экземпляр Zend\Service\AbstractPluginManager
, когда он был зарегистрирован как сервис-менеджер с прослушивателем службы.Конфигурирование Zend Framework 2 AbstractPluginManager
Обзор классов я создал:
AssetManager\AssetFilterPluginManager
: расширяетAbstractPluginManager
AssetManager\Service\AssetFilterManagerFactory
: Фабрика простирающийсяZend\Mvc\Service\AbstractPluginManagerFactory
сconst PLUGIN_MANAGER_CLASS
набор для"AssetManager\AssetFilterManagerFactory"
AssetManager\AssetFilterProviderInterface
: Модуль функциональный интерфейс
В config/module.config.php
я настроил слушателя службы следующим образом:
'service_listener_options' => array(
array(
'service_manager' => 'AssetFilterManager',
'config_key' => 'asset_filters',
'interface' => 'AssetManager\AssetFilterProviderInterface',
'method' => 'getAssetFilterConfig',
),
),
Служба диспетчера конфигурации содержит определение AssetFilterManager
:
'service_manager' => array(
'factories' => array(
'AssetFilterManager' => 'AssetManager\Service\AssetFilterManagerFactory',
),
),
Прочитав использование этих опций в коде кода помощников, это мое понимание того, как должна быть изложена конфигурация. Рассматривая опцию config_key
в параметрах прослушивателя службы, похоже, что конфигурация должна быть передана диспетчеру плагина для настройки служб, но я не могу определить, где это происходит. Возможно, я неправильно понимаю реализацию.
Моя цель - расширение подключаемого сервисного менеджера, которое функционирует так же, как и встроенные плагины контроллера Zend, и просматривать вспомогательные менеджеры. Если есть кто-либо с большим опытом использования этих функций, кроме меня, я был бы признателен за любое понимание.