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-type' => ProductTypeImportRequestModel::class,
46 'product-variant' => ProductVariantImportRequestModel::class,
47 'product-variant-patch' => ProductVariantPatchRequestModel::class,
48 'standalone-price' => StandalonePriceImportRequestModel::class,
49 'type' => TypeImportRequestModel::class,
50 ];
51
55 public function __construct(
56 ?string $type = null
57 ) {
58 $this->type = $type;
59 }
60
67 public function getType()
68 {
69 if (is_null($this->type)) {
71 $data = $this->raw(self::FIELD_TYPE);
72 if (is_null($data)) {
73 return null;
74 }
75 $this->type = (string) $data;
76 }
77
78 return $this->type;
79 }
80
81
82
83
84
89 public static function resolveDiscriminatorClass($value): string
90 {
92 if (is_object($value) && isset($value->$fieldName)) {
94 $discriminatorValue = $value->$fieldName;
95 if (isset(self::$discriminatorClasses[$discriminatorValue])) {
96 return self::$discriminatorClasses[$discriminatorValue];
97 }
98 }
99 if (is_array($value) && isset($value[$fieldName])) {
101 $discriminatorValue = $value[$fieldName];
102 if (isset(self::$discriminatorClasses[$discriminatorValue])) {
103 return self::$discriminatorClasses[$discriminatorValue];
104 }
105 }
106
108 $type = ImportRequestModel::class;
109 return $type;
110 }
111}