vendor/shopware/core/Checkout/Cart/CartBehavior.php line 9

Open in your IDE?
  1. <?php declare(strict_types=1);
  2. namespace Shopware\Core\Checkout\Cart;
  3. use Shopware\Core\Framework\Log\Package;
  4. use Shopware\Core\Framework\Struct\Struct;
  5. #[Package('checkout')]
  6. class CartBehavior extends Struct
  7. {
  8.     /**
  9.      * @var array
  10.      */
  11.     private $permissions = [];
  12.     private bool $hookAware;
  13.     public function __construct(array $permissions = [], bool $hookAware true)
  14.     {
  15.         $this->permissions $permissions;
  16.         $this->hookAware $hookAware;
  17.     }
  18.     /**
  19.      * @deprecated tag:v6.5.0 - Return type will change to bool
  20.      *
  21.      * @phpstan-ignore-next-line when return type will be added we can remove the ignore
  22.      */
  23.     public function hasPermission(string $permission)
  24.     {
  25.         return !empty($this->permissions[$permission]);
  26.     }
  27.     public function getApiAlias(): string
  28.     {
  29.         return 'cart_behavior';
  30.     }
  31.     public function hookAware(): bool
  32.     {
  33.         return $this->hookAware;
  34.     }
  35.     /**
  36.      * @internal
  37.      *
  38.      * @return mixed
  39.      */
  40.     public function disableHooks(\Closure $closure)
  41.     {
  42.         $before $this->hookAware;
  43.         $this->hookAware false;
  44.         $result $closure();
  45.         $this->hookAware $before;
  46.         return $result;
  47.     }
  48. }