cookieMetadataFactory = $cookieMetadataFactory; $this->cookieManager = $cookieManager; } /** * {@inheritdoc} */ public function getStoreCodeFromCookie() { return $this->cookieManager->getCookie(self::COOKIE_NAME); } /** * {@inheritdoc} */ public function setStoreCookie(StoreInterface $store) { $cookieMetadata = $this->cookieMetadataFactory->createPublicCookieMetadata() ->setHttpOnly(true) ->setDurationOneYear() ->setPath($store->getStorePath()); $this->cookieManager->setPublicCookie(self::COOKIE_NAME, $store->getCode(), $cookieMetadata); } /** * {@inheritdoc} */ public function deleteStoreCookie(StoreInterface $store) { $cookieMetadata = $this->cookieMetadataFactory->createPublicCookieMetadata() ->setPath($store->getStorePath()); $this->cookieManager->deleteCookie(self::COOKIE_NAME, $cookieMetadata); } }