![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/laminas/laminas-mvc/src/Service/ |
<?php namespace Laminas\Mvc\Service; use Interop\Container\ContainerInterface; use Laminas\ModuleManager\Listener\DefaultListenerAggregate; use Laminas\ModuleManager\Listener\ListenerOptions; use Laminas\ModuleManager\ModuleEvent; use Laminas\ModuleManager\ModuleManager; use Laminas\ServiceManager\Factory\FactoryInterface; class ModuleManagerFactory implements FactoryInterface { /** * Creates and returns the module manager * * Instantiates the default module listeners, providing them configuration * from the "module_listener_options" key of the ApplicationConfig * service. Also sets the default config glob path. * * Module manager is instantiated and provided with an EventManager, to which * the default listener aggregate is attached. The ModuleEvent is also created * and attached to the module manager. * * @param ContainerInterface $container * @param string $name * @param null|array $options * @return ModuleManager */ public function __invoke(ContainerInterface $container, $name, array $options = null) { $configuration = $container->get('ApplicationConfig'); $listenerOptions = new ListenerOptions($configuration['module_listener_options']); $defaultListeners = new DefaultListenerAggregate($listenerOptions); $serviceListener = $container->get('ServiceListener'); $serviceListener->addServiceManager( $container, 'service_manager', 'Laminas\ModuleManager\Feature\ServiceProviderInterface', 'getServiceConfig' ); $serviceListener->addServiceManager( 'ControllerManager', 'controllers', 'Laminas\ModuleManager\Feature\ControllerProviderInterface', 'getControllerConfig' ); $serviceListener->addServiceManager( 'ControllerPluginManager', 'controller_plugins', 'Laminas\ModuleManager\Feature\ControllerPluginProviderInterface', 'getControllerPluginConfig' ); $serviceListener->addServiceManager( 'ViewHelperManager', 'view_helpers', 'Laminas\ModuleManager\Feature\ViewHelperProviderInterface', 'getViewHelperConfig' ); $serviceListener->addServiceManager( 'RoutePluginManager', 'route_manager', 'Laminas\ModuleManager\Feature\RouteProviderInterface', 'getRouteConfig' ); $events = $container->get('EventManager'); $defaultListeners->attach($events); $serviceListener->attach($events); $moduleEvent = new ModuleEvent; $moduleEvent->setParam('ServiceManager', $container); $moduleManager = new ModuleManager($configuration['modules'], $events); $moduleManager->setEvent($moduleEvent); return $moduleManager; } }