php Zend-Mvc-Controller-ControllerManager类(方法)实例源码

下面列出了php Zend-Mvc-Controller-ControllerManager 类(方法)源码代码实例,从而了解它的用法。

作者:omusic    项目:zf2-dem   
public function testCreateService()
 {
     $controllerManager = new ControllerManager();
     $controllerManager->setServiceLocator(Bootstrap::getServiceManager());
     $result = $this->testedObj->createService($controllerManager);
     $this->assertInstanceOf(UpdateController::class, $result);
 }

作者:phpr    项目:zf-smartcru   
/**
  * @param \Zend\Mvc\Controller\ControllerManager       $controllerManager
  * @param \Zend\ServiceManager\ServiceLocatorInterface $serviceLocator
  * @param array                                        $routeParams
  */
 protected function mockConfiguration($controllerManager, $serviceLocator, $routeParams = array('action' => 'list'))
 {
     $prophet = new Prophet();
     $controllerKey = 'Phpro\\SmartCrud\\Controller\\CrudController';
     $serviceKey = 'Phpro\\SmartCrud\\Service\\AbstractSmartService';
     $viewBuilderKey = 'Phpro\\SmartCrud\\View\\Model\\ViewModelBuilder';
     $controllerManager->getServiceLocator()->willReturn($serviceLocator);
     // Mock config
     $serviceLocator->has('Config')->willReturn(true);
     $serviceLocator->get('Config')->willReturn(array(AbstractCrudControllerFactory::FACTORY_NAMESPACE => array('custom-controller' => array(AbstractCrudControllerFactory::CONFIG_CONTROLLER => $controllerKey, AbstractCrudControllerFactory::CONFIG_IDENTIFIER => 'id', AbstractCrudControllerFactory::CONFIG_SMART_SERVICE => $serviceKey), 'fault-controller' => array(AbstractCrudControllerFactory::CONFIG_CONTROLLER => 'invalid-controller'), 'fault-service' => array(AbstractCrudControllerFactory::CONFIG_SMART_SERVICE => 'invalid-service'))));
     // Mock controller
     $controller = $prophet->prophesize('\\Phpro\\SmartCrud\\Controller\\CrudController');
     $controllerManager->has($controllerKey)->willReturn(true);
     $controllerManager->get($controllerKey)->willReturn($controller);
     $controllerManager->has('invalid-controller')->willReturn(false);
     // Mock route
     $this->mockRouteMatch($serviceLocator, $routeParams);
     // Mock service
     $serviceKey = $serviceKey . '::' . $routeParams['action'];
     $service = $prophet->prophesize('\\Phpro\\SmartCrud\\Service\\AbstractSmartService');
     $serviceLocator->has($serviceKey)->willReturn(true);
     $serviceLocator->get($serviceKey)->willReturn($service);
     $serviceLocator->has('invalid-service::' . $routeParams['action'])->willReturn(false);
     $viewBuilder = $prophet->prophesize('\\Phpro\\SmartCrud\\View\\Model\\ViewModelBuilder');
     $serviceLocator->has($viewBuilderKey)->willReturn(true);
     $serviceLocator->get($viewBuilderKey)->willReturn($viewBuilder);
     $this->setServiceLocator($serviceLocator);
 }

作者:jkhale    项目:LearnZF   
/**
  * @return ServiceLocatorInterface
  *
  * @param array $data
  */
 private function createServiceLocator(array $data = [])
 {
     $controllerManager = new ControllerManager();
     $sm = new ServiceManager();
     $sm->setService('Config', $data);
     $controllerManager->setServiceLocator($sm);
     return $controllerManager;
 }

作者:samsonasi    项目:unname   
/**
  * {@inheritdoc}
  */
 public function __invoke(ControllerManager $controllerManager)
 {
     $serviceLocator = $controllerManager->getServiceLocator();
     /* @var \Zend\Authentication\AuthenticationService */
     $doctrineAuthService = $serviceLocator->get('doctrine.authenticationservice.orm_default');
     $controller = new LoginController($serviceLocator->get('FormElementManager')->get('SD\\Application\\Form\\LoginForm'), $doctrineAuthService);
     return $controller;
 }

作者:schmiddi    项目:zf2-wishlist-importe   
public function __invoke(ControllerManager $container, $name, array $options = null)
 {
     /**
      * @var $synchronizeDbAgainstAmazon SynchronizeDbAgainstAmazonInterface
      */
     $synchronizeDbAgainstAmazon = $container->getServiceLocator()->get(SynchronizeDbAgainstAmazonInterface::class);
     return new CliController($synchronizeDbAgainstAmazon);
 }

作者:alapin    项目:apigility-3hr-tutoria   
protected function setUp()
 {
     $this->factory = new AuthControllerFactory();
     $this->services = $services = new ServiceManager();
     $this->controllers = $controllers = new ControllerManager();
     $controllers->setServiceLocator(new ServiceManager());
     $controllers->getServiceLocator()->setService('ServiceManager', $services);
 }

作者:dpoltoratsk    项目:ZfSimpleMigration   
public function test_it_returns_a_controller()
 {
     $controller_manager = new ControllerManager();
     $controller_manager->setServiceLocator($this->service_manager);
     $factory = new MigrateControllerFactory();
     $instance = $factory->createService($controller_manager);
     $this->assertInstanceOf(MigrateController::class, $instance, "factory should return an instance of " . MigrateController::class);
 }

作者:samsonasi    项目:unname   
/**
  * {@inheritdoc}
  */
 public function __invoke(ControllerManager $controllerManager)
 {
     $serviceLocator = $controllerManager->getServiceLocator();
     $themesConfig = $serviceLocator->get('getThemesFromDir');
     $reloadService = $serviceLocator->get('reloadService');
     $controller = new IndexController($themesConfig, $reloadService);
     return $controller;
 }

作者:interactive-solution    项目:zf-email-template-ap   
public function __invoke(ControllerManager $manager) : EmailTemplateResourceController
 {
     $serviceLocator = $manager->getServiceLocator();
     /* @var $repository TemplateRepository */
     $repository = $serviceLocator->get(TemplateRepository::class);
     /* @var $service TemplateService */
     $service = $serviceLocator->get(TemplateService::class);
     return new EmailTemplateResourceController($repository, $service);
 }

作者:shitikovkiril    项目:zend-shop.co   
public function testFactory()
 {
     $serviceManager = new ServiceManager();
     $serviceManager->setService('HtImgModule\\Service\\ImageService', $this->getMock('HtImgModule\\Service\\ImageServiceInterface'));
     $factory = new ImageControllerFactory();
     $controllers = new ControllerManager();
     $controllers->setServiceLocator($serviceManager);
     $this->assertInstanceOf('HtImgModule\\Controller\\ImageController', $factory->createService($controllers));
 }

作者:jkhale    项目:LearnZF   
public function testCreateService()
 {
     $sm = new ServiceManager();
     $sm->setService('Console', new Posix());
     $sm->setService('Config', []);
     $cm = new ControllerManager();
     $cm->setServiceLocator($sm);
     $controller = $this->factory->createService($cm);
     $this->assertInstanceOf('Application\\Controller\\ConsoleController', $controller);
 }

作者:dpoltoratsk    项目:ZfSimpleMigration   
public function test_it_returns_a_skeleton_generator()
 {
     $controller_manager = new ControllerManager();
     $controller_manager->setServiceLocator($this->service_manager);
     $factory = new MigrationSkeletonGeneratorAbstractFactory();
     $instance = $factory->createServiceWithName($controller_manager, 'migrations.skeletongenerator.foo', 'asdf');
     $this->assertInstanceOf(MigrationSkeletonGenerator::class, $instance, "factory should return an instance of " . MigrationSkeletonGenerator::class . " when asked by \$name");
     $instance2 = $factory->createServiceWithName($this->service_manager, 'asdf', 'migrations.skeletongenerator.foo');
     $this->assertInstanceOf(MigrationSkeletonGenerator::class, $instance2, "factory should return an instance of " . MigrationSkeletonGenerator::class . " when asked by \$requestedName");
 }

作者:patrickpreus    项目:Braintacl   
/**
  * Set up application config
  */
 public function setUp()
 {
     parent::setUp();
     $this->setTraceError(true);
     $this->setApplicationConfig(\Library\Application::getService('ApplicationConfig'));
     $this->_controllerManager = $this->getMock('Zend\\Mvc\\Controller\\ControllerManager');
     $this->_controllerManager->expects($this->any())->method('has')->will($this->returnValue(true));
     $this->_controllerManager->expects($this->any())->method('get')->will($this->returnCallback(array($this, 'createController')));
     $this->getApplicationServiceLocator()->setAllowOverride(true)->setService('ControllerManager', $this->_controllerManager);
 }

作者:alex-patterson-webde    项目:arp-aut   
/**
  * createService
  *
  * Create the authentication service.
  *
  * @param ControllerManager  $controllerManager  The controller manager.
  * @param string             $name               The name of the service.
  * @param string             $requestedName      The requested name of the service.
  *
  * @return LoginController
  */
 public function __invoke(ControllerManager $controllerManager, $name, $requestedName)
 {
     /** @var ServiceManager $serviceManager */
     $serviceManager = $controllerManager->getServiceLocator();
     /** @todo We should create an object that holds the options */
     $options = $this->getOptions($serviceManager, $requestedName);
     $className = $options['class_name'];
     $controller = new $className($this->getAuthenticationService($serviceManager, $options['auth_service']), $this->getRouteProvider($serviceManager, $options['route_provider']), $this->getFormProvider($serviceManager, $options['form_element_provider']), $this->getViewTemplateProvider($serviceManager, $options['view_template_provider']), isset($options['options']) && is_array($options['options']) ? $options['options'] : []);
     return $controller;
 }

作者:MehrAlsNi    项目:zf2-featureflag   
protected function setUp()
 {
     $this->factory = new ToggleContextFactory();
     $this->services = $services = new ServiceManager();
     $this->services->setService('Config', ['zf2_featureflags' => ['qandidate_toggle' => ['persistence' => 'ToggleFeature\\InMemory', 'context_factory' => 'ToggleFeature\\UserContextFactory', 'redis_namespace' => null, 'redis_client' => null], 'features' => ['some-feature' => ['name' => 'toggling', 'conditions' => [['name' => 'operator-condition', 'key' => 'user_id', 'operator' => ['name' => 'greater-than', 'value' => 41]]], 'status' => 'conditionally-active']]]]);
     $this->controllers = $controllers = new ControllerManager($this->services);
     $controllers->setServiceLocator(new ServiceManager());
     $controllers->getServiceLocator()->setService('ServiceManager', $services);
     $this->setApplicationConfig(['modules' => ['MehrAlsNix\\FeatureToggle'], 'module_listener_options' => ['module_paths' => [__DIR__ . '/../../../'], 'config_glob_paths' => []], 'service_listener_options' => [], 'service_manager' => []]);
     parent::setUp();
 }

作者:gstearmi    项目:EshopVegeTabl   
protected function setUp()
 {
     $this->factory = new AuthControllerFactory();
     $this->services = $services = new ServiceManager();
     $this->services->setService('Config', ['zf-oauth2' => ['api_problem_error_response' => true]]);
     $this->controllers = $controllers = new ControllerManager();
     $controllers->setServiceLocator(new ServiceManager());
     $controllers->getServiceLocator()->setService('ServiceManager', $services);
     $this->setApplicationConfig(['modules' => ['ZF\\OAuth2'], 'module_listener_options' => ['module_paths' => [__DIR__ . '/../../'], 'config_glob_paths' => []], 'service_listener_options' => [], 'service_manager' => []]);
     parent::setUp();
 }

作者:leonardovn8    项目:zf2_basic201   
/**
  * Create the controller loader service
  *
  * Creates and returns an instance of ControllerManager. The
  * only controllers this manager will allow are those defined in the
  * application configuration's "controllers" array. If a controller is
  * matched, the scoped manager will attempt to load the controller.
  * Finally, it will attempt to inject the controller plugin manager
  * if the controller implements a setPluginManager() method.
  *
  * This plugin manager is _not_ peered against DI, and as such, will
  * not load unknown classes.
  *
  * @param  ServiceLocatorInterface $serviceLocator
  * @return ControllerManager
  */
 public function createService(ServiceLocatorInterface $serviceLocator)
 {
     $controllerLoader = new ControllerManager();
     $controllerLoader->setServiceLocator($serviceLocator);
     $controllerLoader->addPeeringServiceManager($serviceLocator);
     $config = $serviceLocator->get('Config');
     if (isset($config['di']) && isset($config['di']['allowed_controllers']) && $serviceLocator->has('Di')) {
         $controllerLoader->addAbstractFactory($serviceLocator->get('DiStrictAbstractServiceFactory'));
     }
     return $controllerLoader;
 }

作者:alex-oleshkevic    项目:zf2-annotated-route   
public function setUp()
 {
     parent::setUp();
     $this->serviceManager = new ServiceManager();
     $controllerLoader = new ControllerManager();
     $controllerLoader->setServiceLocator($this->serviceManager);
     $this->serviceManager->setService('ControllerLoader', $controllerLoader);
     $this->serviceManager->setFactory('AnnotatedRouter\\AnnotationManager', 'AnnotatedRouter\\Service\\AnnotationManagerFactory');
     $this->serviceManager->setFactory('parser', 'AnnotatedRouter\\Service\\ControllerParserFactory');
     $this->serviceManager->setService('Config', array('controllers' => array('invokables' => array('nobase' => 'AnnotatedRouterTest\\TestController\\NoBaseController', 'namespaced' => 'AnnotatedRouterTest\\TestController\\NamespacedController', 'noindexroute' => 'AnnotatedRouterTest\\TestController\\NoIndexRouteController', 'invalidrootroute' => 'AnnotatedRouterTest\\TestController\\InvalidRootRouteController', 'extends' => 'AnnotatedRouterTest\\TestController\\ExtendsController')), 'annotated_router' => array('compile_on_request' => true, 'cache_file' => 'data/cache/router.cache.php', 'use_cache' => true, 'annotations' => array('AnnotatedRouter\\Annotation\\Base', 'AnnotatedRouter\\Annotation\\Index', 'AnnotatedRouter\\Annotation\\Route')), 'router' => array('routes' => array('default' => array('type' => 'literal', 'options' => array('route' => '/'), 'child_routes' => array('help' => array('type' => 'literal', 'options' => array('route' => '/help'))))))));
 }

作者:interactive-solution    项目:zf-user-messag   
public function __invoke(ControllerManager $controllerManager) : NamedConversationRpcResource
 {
     $container = $controllerManager->getServiceLocator();
     /* @var EntityManager $entityManager */
     $entityManager = $container->get('InteractiveSolutions\\Message\\ObjectManager');
     /* @var  NamedConversationRepository $conversationRepository */
     $conversationRepository = $entityManager->getRepository(NamedConversationEntity::class);
     $userRepository = $entityManager->getRepository(MessageUserInterface::class);
     /* @var ConversationService $conversationService */
     $conversationService = $container->get(ConversationService::class);
     return new NamedConversationRpcResource($conversationRepository, $userRepository, $conversationService);
 }

作者:utrenkne    项目:YAWI   
/**
  *
  */
 public function testCreateService()
 {
     $sm = clone Bootstrap::getServiceManager();
     $sm->setAllowOverride(true);
     $jobRepositoryMock = $this->getMockBuilder('Jobs\\Repository\\Job')->disableOriginalConstructor()->getMock();
     $repositoriesMock = $this->getMockBuilder('Core\\Repository\\RepositoryService')->disableOriginalConstructor()->getMock();
     $repositoriesMock->expects($this->once())->method('get')->with('Jobs/Job')->willReturn($jobRepositoryMock);
     $sm->setService('repositories', $repositoriesMock);
     $controllerManager = new ControllerManager();
     $controllerManager->setServiceLocator($sm);
     $result = $this->testedObj->createService($controllerManager);
     $this->assertInstanceOf('Jobs\\Controller\\JobboardController', $result);
 }


问题


面经


文章

微信
公众号

扫码关注公众号