get('config')['laminas-cli'] ?? []; Assert::isMap($config); $commands = $config['commands'] ?? []; Assert::isMap($commands); Assert::allString($commands); $eventDispatcherServiceName = __NAMESPACE__ . '\SymfonyEventDispatcher'; $dispatcher = $container->has($eventDispatcherServiceName) ? $container->get($eventDispatcherServiceName) : new EventDispatcher(); Assert::isInstanceOf($dispatcher, EventDispatcherInterface::class); $dispatcher->addListener(ConsoleEvents::TERMINATE, new TerminateListener($config)); $application->setCommandLoader(new ContainerCommandLoader($container, $commands)); $application->setDispatcher($dispatcher); return $application; } }