3declare(strict_types=1);
175 if (is_null($this->key)) {
177 $data = $this->
raw(self::FIELD_KEY);
178 if (is_null($data)) {
181 $this->key = (string) $data;
195 if (is_null($this->productId)) {
197 $data = $this->
raw(self::FIELD_PRODUCT_ID);
198 if (is_null($data)) {
201 $this->productId = (string) $data;
216 if (is_null($this->variantId)) {
218 $data = $this->
raw(self::FIELD_VARIANT_ID);
219 if (is_null($data)) {
222 $this->variantId = (int) $data;
236 if (is_null($this->sku)) {
238 $data = $this->
raw(self::FIELD_SKU);
239 if (is_null($data)) {
242 $this->sku = (string) $data;
256 if (is_null($this->quantity)) {
258 $data = $this->
raw(self::FIELD_QUANTITY);
259 if (is_null($data)) {
262 $this->quantity = (int) $data;
278 if (is_null($this->addedAt)) {
280 $data = $this->
raw(self::FIELD_ADDED_AT);
281 if (is_null($data)) {
284 $data = DateTimeImmutable::createFromFormat(MapperFactory::DATETIME_FORMAT, $data);
285 if (
false === $data) {
288 $this->addedAt = $data;
305 if (is_null($this->distributionChannel)) {
307 $data = $this->
raw(self::FIELD_DISTRIBUTION_CHANNEL);
308 if (is_null($data)) {
312 $this->distributionChannel = ChannelResourceIdentifierModel::of($data);
327 if (is_null($this->supplyChannel)) {
329 $data = $this->
raw(self::FIELD_SUPPLY_CHANNEL);
330 if (is_null($data)) {
334 $this->supplyChannel = ChannelResourceIdentifierModel::of($data);
349 if (is_null($this->externalPrice)) {
351 $data = $this->
raw(self::FIELD_EXTERNAL_PRICE);
352 if (is_null($data)) {
356 $this->externalPrice = MoneyModel::of($data);
370 if (is_null($this->externalTotalPrice)) {
372 $data = $this->
raw(self::FIELD_EXTERNAL_TOTAL_PRICE);
373 if (is_null($data)) {
391 if (is_null($this->externalTaxRate)) {
393 $data = $this->
raw(self::FIELD_EXTERNAL_TAX_RATE);
394 if (is_null($data)) {
412 if (is_null($this->perMethodExternalTaxRate)) {
414 $data = $this->
raw(self::FIELD_PER_METHOD_EXTERNAL_TAX_RATE);
415 if (is_null($data)) {
433 if (is_null($this->inventoryMode)) {
435 $data = $this->
raw(self::FIELD_INVENTORY_MODE);
436 if (is_null($data)) {
439 $this->inventoryMode = (string) $data;
453 if (is_null($this->shippingDetails)) {
455 $data = $this->
raw(self::FIELD_SHIPPING_DETAILS);
456 if (is_null($data)) {
474 if (is_null($this->custom)) {
476 $data = $this->
raw(self::FIELD_CUSTOM);
477 if (is_null($data)) {
481 $this->custom = CustomFieldsDraftModel::of($data);
495 if (is_null($this->recurrenceInfo)) {
497 $data = $this->
raw(self::FIELD_RECURRENCE_INFO);
498 if (is_null($data)) {
502 $this->recurrenceInfo = LineItemRecurrenceInfoDraftModel::of($data);
638 #[\ReturnTypeWillChange]
645 return (
object) $data;