It looks a little inconsequent in a factory when all services are requested by class names except the very important ViewHelperManager for example. Is there a chance to get this sorted?
Example:
namespace UserFrontend\Authorization;
use Interop\Container\ContainerInterface;
use UserModel\Permissions\UserAcl;
use Zend\Authentication\AuthenticationService;
use Zend\ServiceManager\Factory\FactoryInterface;
use Zend\View\Helper\Navigation;
class AuthorizationListenerFactory implements FactoryInterface
{
public function __invoke(
ContainerInterface $container,
$requestedName,
array $options = null
) {
$viewHelperManager = $container->get('ViewHelperManager');
$authService = $container->get(AuthenticationService::class);
$userAcl = $container->get(UserAcl::class);
$navigationHelper = $viewHelperManager->get(Navigation::class);
$authorizationListener = new AuthorizationListener(
$authService, $userAcl, $navigationHelper
);
return $authorizationListener;
}
}
I noticed that most services defined in the
Zend\Mvc\Service\ServiceListenerFactory
still use strings for the services names instead of class names.https://github.com/zendframework/zend-mvc/blob/develop/src/Service/ServiceListenerFactory.php
It looks a little inconsequent in a factory when all services are requested by class names except the very important
ViewHelperManager
for example. Is there a chance to get this sorted?Example:
Originally posted by @RalfEggert at https://github.com/zendframework/zend-mvc/issues/186