[ Index ] |
PHP Cross Reference of Joomla 4.2.2 documentation |
[Summary view] [Print] [Text view]
1 <?php 2 3 /** 4 * Joomla! Content Management System 5 * 6 * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> 7 * @license GNU General Public License version 2 or later; see LICENSE.txt 8 */ 9 10 namespace Joomla\CMS\Extension\Service\Provider; 11 12 use Joomla\CMS\Dispatcher\ComponentDispatcherFactoryInterface; 13 use Joomla\CMS\MVC\Factory\MVCFactoryInterface; 14 use Joomla\DI\Container; 15 use Joomla\DI\ServiceProviderInterface; 16 17 // phpcs:disable PSR1.Files.SideEffects 18 \defined('JPATH_PLATFORM') or die; 19 // phpcs:enable PSR1.Files.SideEffects 20 21 /** 22 * Service provider for the service dispatcher factory. 23 * 24 * @since 4.0.0 25 */ 26 class ComponentDispatcherFactory implements ServiceProviderInterface 27 { 28 /** 29 * The component namespace 30 * 31 * @var string 32 * 33 * @since 4.0.0 34 */ 35 private $namespace; 36 37 /** 38 * ComponentDispatcherFactory constructor. 39 * 40 * @param string $namespace The namespace 41 * 42 * @since 4.0.0 43 */ 44 public function __construct(string $namespace) 45 { 46 $this->namespace = $namespace; 47 } 48 49 /** 50 * Registers the service provider with a DI container. 51 * 52 * @param Container $container The DI container. 53 * 54 * @return void 55 * 56 * @since 4.0.0 57 */ 58 public function register(Container $container) 59 { 60 $container->set( 61 ComponentDispatcherFactoryInterface::class, 62 function (Container $container) { 63 return new \Joomla\CMS\Dispatcher\ComponentDispatcherFactory($this->namespace, $container->get(MVCFactoryInterface::class)); 64 } 65 ); 66 } 67 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Wed Sep 7 05:41:13 2022 | Chilli.vc Blog - For Webmaster,Blog-Writer,System Admin and Domainer |