diff --git a/libraries/src/Extension/ExtensionManagerTrait.php b/libraries/src/Extension/ExtensionManagerTrait.php index dd05ffdac100a..66ac5cae3710b 100644 --- a/libraries/src/Extension/ExtensionManagerTrait.php +++ b/libraries/src/Extension/ExtensionManagerTrait.php @@ -26,7 +26,7 @@ trait ExtensionManagerTrait * * @var array */ - private $extensions = ['component' => []]; + private $extensions = [ComponentInterface::class => []]; /** * Boots the component with the given name. @@ -45,7 +45,7 @@ public function bootComponent($component): ComponentInterface // Path to to look for services $path = JPATH_ADMINISTRATOR . '/components/com_' . $component; - return $this->loadExtension('component', $component, $path); + return $this->loadExtension(ComponentInterface::class, $component, $path); } /** @@ -86,7 +86,7 @@ private function loadExtension($type, $extensionName, $extensionPath) } // Fallback to legacy - if (!$container->has($type) && $type == 'component') + if (!$container->has($type) && $type == ComponentInterface::class) { $container->set($type, new LegacyComponent('com_' . $extensionName)); } diff --git a/libraries/src/Extension/Service/Provider/Component.php b/libraries/src/Extension/Service/Provider/Component.php index 4161fbc08540b..5a86696bddd59 100644 --- a/libraries/src/Extension/Service/Provider/Component.php +++ b/libraries/src/Extension/Service/Provider/Component.php @@ -13,6 +13,7 @@ use Joomla\CMS\Association\AssociationExtensionInterface; use Joomla\CMS\Categories\Categories; use Joomla\CMS\Dispatcher\DispatcherFactoryInterface; +use Joomla\CMS\Extension\ComponentInterface; use Joomla\CMS\MVC\Factory\MVCFactoryFactoryInterface; use Joomla\DI\Container; use Joomla\DI\ServiceProviderInterface; @@ -36,7 +37,7 @@ class Component implements ServiceProviderInterface public function register(Container $container) { $container->set( - 'component', + ComponentInterface::class, function (Container $container) { $component = new \Joomla\CMS\Extension\Component;