commercetools-sdk-php-v2
The commercetools platform, import-api and PHP sdks generated from our api reference.
Loading...
Searching...
No Matches
ImportRequestModel.php
1<?php
2
3declare(strict_types=1);
10
15use stdClass;
16
20final class ImportRequestModel extends JsonObjectModel implements ImportRequest
21{
22 public const DISCRIMINATOR_VALUE = '';
27 protected $type;
28
33 private static $discriminatorClasses = [
34 'business-unit' => BusinessUnitImportRequestModel::class,
35 'category' => CategoryImportRequestModel::class,
36 'customer' => CustomerImportRequestModel::class,
37 'discount-code' => DiscountCodeImportRequestModel::class,
38 'inventory' => InventoryImportRequestModel::class,
39 'order' => OrderImportRequestModel::class,
40 'order-patch' => OrderPatchImportRequestModel::class,
41 'price' => PriceImportRequestModel::class,
42 'product' => ProductImportRequestModel::class,
43 'product-draft' => ProductDraftImportRequestModel::class,
44 'product-selection' => ProductSelectionImportRequestModel::class,
45 'product-tailoring' => ProductTailoringImportRequestModel::class,
46 'product-type' => ProductTypeImportRequestModel::class,
47 'product-variant' => ProductVariantImportRequestModel::class,
48 'product-variant-patch' => ProductVariantPatchRequestModel::class,
49 'standalone-price' => StandalonePriceImportRequestModel::class,
50 'type' => TypeImportRequestModel::class,
51 'variant' => VariantImportRequestModel::class,
52 ];
53
57 public function __construct(
58 ?string $type = null
59 ) {
60 $this->type = $type;
61 }
62
69 public function getType()
70 {
71 if (is_null($this->type)) {
73 $data = $this->raw(self::FIELD_TYPE);
74 if (is_null($data)) {
75 return null;
76 }
77 $this->type = (string) $data;
78 }
79
80 return $this->type;
81 }
82
83
84
85
86
91 public static function resolveDiscriminatorClass($value): string
92 {
94 if (is_object($value) && isset($value->$fieldName)) {
96 $discriminatorValue = $value->$fieldName;
97 if (isset(self::$discriminatorClasses[$discriminatorValue])) {
98 return self::$discriminatorClasses[$discriminatorValue];
99 }
100 }
101 if (is_array($value) && isset($value[$fieldName])) {
103 $discriminatorValue = $value[$fieldName];
104 if (isset(self::$discriminatorClasses[$discriminatorValue])) {
105 return self::$discriminatorClasses[$discriminatorValue];
106 }
107 }
108
110 $type = ImportRequestModel::class;
111 return $type;
112 }
113}