<?php
namespace Amasty\Shopby\Model\StoreSwitcher\ModifyUrl;

/**
 * Interceptor class for @see \Amasty\Shopby\Model\StoreSwitcher\ModifyUrl
 */
class Interceptor extends \Amasty\Shopby\Model\StoreSwitcher\ModifyUrl implements \Magento\Framework\Interception\InterceptorInterface
{
    use \Magento\Framework\Interception\Interceptor;

    public function __construct(\Amasty\ShopbyBase\Model\UrlBuilder\UrlModifier $urlModifier, \Amasty\Shopby\Model\StoreSwitcher\CategoryRegistry $categoryRegistry, \Magento\Framework\App\RequestInterface $request)
    {
        $this->___init();
        parent::__construct($urlModifier, $categoryRegistry, $request);
    }

    /**
     * {@inheritdoc}
     */
    public function switch(\Magento\Store\Api\Data\StoreInterface $fromStore, \Magento\Store\Api\Data\StoreInterface $targetStore, string $redirectUrl): string
    {
        $pluginInfo = $this->pluginList->getNext($this->subjectType, 'switch');
        return $pluginInfo ? $this->___callPlugins('switch', func_get_args(), $pluginInfo) : parent::switch($fromStore, $targetStore, $redirectUrl);
    }
}
