/**
  * {@inheritDoc}
  * @return AuthorizationService
  */
 public function createService(ServiceLocatorInterface $serviceLocator)
 {
     /* @var \Rbac\Rbac $rbac */
     $rbac = $serviceLocator->get('Rbac\\Rbac');
     /* @var \ZfcRbac\Service\RoleService $roleService */
     $roleService = $serviceLocator->get('ZfcRbac\\Service\\RoleService');
     /* @var \ZfcRbac\Assertion\AssertionPluginManager $assertionPluginManager */
     $assertionPluginManager = $serviceLocator->get('ZfcRbac\\Assertion\\AssertionPluginManager');
     /* @var \ZfcRbac\Options\ModuleOptions $moduleOptions */
     $moduleOptions = $serviceLocator->get('ZfcRbac\\Options\\ModuleOptions');
     $authorizationService = new AuthorizationService($rbac, $roleService, $assertionPluginManager);
     $authorizationService->setAssertions($moduleOptions->getAssertionMap());
     return $authorizationService;
 }
예제 #2
0
파일: Module.php 프로젝트: b-medias/bZF2
 public function getServiceConfig()
 {
     return ['factories' => [__NAMESPACE__ . '/Service/' . __NAMESPACE__ . 'Service' => function ($serviceManager) {
         $service = new Service\AuthorizationService();
         return $service->setServiceManager($serviceManager);
     }, __NAMESPACE__ . '/Repository/' . __NAMESPACE__ . 'Repository' => function ($serviceManager) {
         $repository = new Repository\AuthorizationRepository();
         return $repository->setServiceManager($serviceManager);
     }, __NAMESPACE__ . '/Event/' . __NAMESPACE__ . 'Event' => function ($serviceManager) {
         $event = new Event\AuthorizationEvent();
         return $event->setServiceManager($serviceManager);
     }, __NAMESPACE__ . '/Listener/' . __NAMESPACE__ . 'Listener' => function ($serviceManager) {
         $listener = new Listener\AuthorizationListener();
         return $listener->setServiceManager($serviceManager);
     }]];
 }