vendor/sylius/sylius/src/Sylius/Component/Core/Context/ShopperContext.php line 26

Open in your IDE?
  1. <?php
  2. /*
  3.  * This file is part of the Sylius package.
  4.  *
  5.  * (c) Paweł Jędrzejewski
  6.  *
  7.  * For the full copyright and license information, please view the LICENSE
  8.  * file that was distributed with this source code.
  9.  */
  10. declare(strict_types=1);
  11. namespace Sylius\Component\Core\Context;
  12. use Sylius\Component\Channel\Context\ChannelContextInterface;
  13. use Sylius\Component\Channel\Model\ChannelInterface;
  14. use Sylius\Component\Currency\Context\CurrencyContextInterface;
  15. use Sylius\Component\Customer\Context\CustomerContextInterface;
  16. use Sylius\Component\Customer\Model\CustomerInterface;
  17. use Sylius\Component\Locale\Context\LocaleContextInterface;
  18. /**
  19.  * Should not be extended, final removed to make this class lazy.
  20.  */
  21. /* final */ class ShopperContext implements ShopperContextInterface
  22. {
  23.     public function __construct(
  24.         private ChannelContextInterface $channelContext,
  25.         private CurrencyContextInterface $currencyContext,
  26.         private LocaleContextInterface $localeContext,
  27.         private CustomerContextInterface $customerContext
  28.     ) {
  29.     }
  30.     public function getChannel(): ChannelInterface
  31.     {
  32.         return $this->channelContext->getChannel();
  33.     }
  34.     public function getCurrencyCode(): string
  35.     {
  36.         return $this->currencyContext->getCurrencyCode();
  37.     }
  38.     public function getLocaleCode(): string
  39.     {
  40.         return $this->localeContext->getLocaleCode();
  41.     }
  42.     public function getCustomer(): ?CustomerInterface
  43.     {
  44.         return $this->customerContext->getCustomer();
  45.     }
  46. }