* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0) */ declare(strict_types=1); namespace PrestaShopBundle\Bridge\AdminController; use PrestaShop\PrestaShop\Adapter\LegacyContext; use PrestaShop\PrestaShop\Core\Feature\FeatureInterface; use PrestaShop\PrestaShop\Core\Hook\HookDispatcherInterface; class LegacyControllerBridgeFactory { /** * @var FeatureInterface */ private $multistoreFeature; /** * @var LegacyContext */ private $legacyContext; /** * @var HookDispatcherInterface */ private $hookDispatcher; /** * @param FeatureInterface $multistoreFeature */ public function __construct( FeatureInterface $multistoreFeature, LegacyContext $legacyContext, HookDispatcherInterface $hookDispatcher ) { $this->multistoreFeature = $multistoreFeature; $this->legacyContext = $legacyContext; $this->hookDispatcher = $hookDispatcher; } /** * @param ControllerConfiguration $controllerConfiguration * * @return LegacyControllerBridgeInterface */ public function create( ControllerConfiguration $controllerConfiguration ): LegacyControllerBridgeInterface { return new LegacyControllerBridge( $controllerConfiguration, $this->multistoreFeature, $this->legacyContext, $this->hookDispatcher ); } }