Conditions | 4 |
Paths | 8 |
Total Lines | 26 |
Code Lines | 17 |
Lines | 0 |
Ratio | 0 % |
Changes | 0 |
1 | <?php |
||
28 | public function boot(): ApplicationInterface |
||
29 | { |
||
30 | $configuration = require $this->configurationFilePath; |
||
31 | |||
32 | $serviceManagerConfig = isset($configuration['service_manager']) ? $configuration['service_manager'] : []; |
||
33 | $serviceManagerConfig = new ServiceManagerConfig($serviceManagerConfig); |
||
34 | |||
35 | $serviceManager = new ServiceManager(); |
||
36 | $serviceManagerConfig->configureServiceManager($serviceManager); |
||
37 | $serviceManager->setService('ApplicationConfig', $configuration); |
||
38 | |||
39 | $serviceManager->get('ModuleManager')->loadModules(); |
||
40 | $listenersFromAppConfig = isset($configuration['listeners']) ? $configuration['listeners'] : []; |
||
41 | $config = $serviceManager->get('config'); |
||
42 | $listenersFromConfigService = isset($config['listeners']) ? $config['listeners'] : []; |
||
43 | |||
44 | $listeners = array_unique( |
||
45 | array_merge( |
||
46 | $listenersFromConfigService, |
||
47 | $listenersFromAppConfig |
||
48 | ) |
||
49 | ); |
||
50 | |||
51 | return $serviceManager->get('Application') |
||
52 | ->bootstrap($listeners); |
||
53 | } |
||
54 | } |
||
55 |