vendor/shopware/core/Content/Cms/DataResolver/FieldConfig.php line 10

Open in your IDE?
  1. <?php declare(strict_types=1);
  2. namespace Shopware\Core\Content\Cms\DataResolver;
  3. use Shopware\Core\Content\Cms\Exception\UnexpectedFieldConfigValueType;
  4. use Shopware\Core\Framework\Log\Package;
  5. use Shopware\Core\Framework\Struct\Struct;
  6. #[Package('content')]
  7. class FieldConfig extends Struct
  8. {
  9.     public const SOURCE_STATIC 'static';
  10.     public const SOURCE_MAPPED 'mapped';
  11.     public const SOURCE_DEFAULT 'default';
  12.     public const SOURCE_PRODUCT_STREAM 'product_stream';
  13.     /**
  14.      * @var string
  15.      */
  16.     protected $name;
  17.     /**
  18.      * @var string
  19.      */
  20.     protected $source;
  21.     /**
  22.      * @var array|bool|float|int|string|null
  23.      */
  24.     protected $value;
  25.     /**
  26.      * @param array|bool|float|int|string|null $value
  27.      */
  28.     public function __construct(string $namestring $source$value)
  29.     {
  30.         $this->name $name;
  31.         $this->source $source;
  32.         $this->value $value;
  33.     }
  34.     public function getName(): string
  35.     {
  36.         return $this->name;
  37.     }
  38.     public function getSource(): string
  39.     {
  40.         return $this->source;
  41.     }
  42.     /**
  43.      * @return array|bool|float|int|string|null
  44.      */
  45.     public function getValue()
  46.     {
  47.         return $this->value;
  48.     }
  49.     public function getArrayValue(): array
  50.     {
  51.         if (\is_array($this->value)) {
  52.             return $this->value;
  53.         }
  54.         throw new UnexpectedFieldConfigValueType($this->name'array'\gettype($this->value));
  55.     }
  56.     public function getStringValue(): string
  57.     {
  58.         if (!\is_array($this->value)) {
  59.             return (string) $this->value;
  60.         }
  61.         throw new UnexpectedFieldConfigValueType($this->name'string'\gettype($this->value));
  62.     }
  63.     public function getIntValue(): int
  64.     {
  65.         if (!\is_array($this->value)) {
  66.             return (int) $this->value;
  67.         }
  68.         throw new UnexpectedFieldConfigValueType($this->name'int'\gettype($this->value));
  69.     }
  70.     public function getFloatValue(): float
  71.     {
  72.         if (!\is_array($this->value)) {
  73.             return (float) $this->value;
  74.         }
  75.         throw new UnexpectedFieldConfigValueType($this->name'float'\gettype($this->value));
  76.     }
  77.     public function getBoolValue(): bool
  78.     {
  79.         return (bool) $this->value;
  80.     }
  81.     public function isStatic(): bool
  82.     {
  83.         return $this->source === self::SOURCE_STATIC;
  84.     }
  85.     public function isMapped(): bool
  86.     {
  87.         return $this->source === self::SOURCE_MAPPED;
  88.     }
  89.     public function isProductStream(): bool
  90.     {
  91.         return $this->source === self::SOURCE_PRODUCT_STREAM;
  92.     }
  93.     public function isDefault(): bool
  94.     {
  95.         return $this->source === self::SOURCE_DEFAULT;
  96.     }
  97.     public function getApiAlias(): string
  98.     {
  99.         return 'cms_data_resolver_field_config';
  100.     }
  101. }