33 private static $discriminatorClasses = [
34 'addDelivery' => OrderAddDeliveryActionModel::class,
35 'addItemShippingAddress' => OrderAddItemShippingAddressActionModel::class,
36 'addParcelToDelivery' => OrderAddParcelToDeliveryActionModel::class,
37 'addPayment' => OrderAddPaymentActionModel::class,
38 'addReturnInfo' => OrderAddReturnInfoActionModel::class,
39 'changeOrderState' => OrderChangeOrderStateActionModel::class,
40 'changePaymentState' => OrderChangePaymentStateActionModel::class,
41 'changeShipmentState' => OrderChangeShipmentStateActionModel::class,
42 'importCustomLineItemState' => OrderImportCustomLineItemStateActionModel::class,
43 'importLineItemState' => OrderImportLineItemStateActionModel::class,
44 'removeDelivery' => OrderRemoveDeliveryActionModel::class,
45 'removeItemShippingAddress' => OrderRemoveItemShippingAddressActionModel::class,
46 'removeParcelFromDelivery' => OrderRemoveParcelFromDeliveryActionModel::class,
47 'removePayment' => OrderRemovePaymentActionModel::class,
48 'setBillingAddress' => OrderSetBillingAddressActionModel::class,
49 'setBillingAddressCustomField' => OrderSetBillingAddressCustomFieldActionModel::class,
50 'setBillingAddressCustomType' => OrderSetBillingAddressCustomTypeActionModel::class,
51 'setBusinessUnit' => OrderSetBusinessUnitActionModel::class,
52 'setCustomField' => OrderSetCustomFieldActionModel::class,
53 'setCustomLineItemCustomField' => OrderSetCustomLineItemCustomFieldActionModel::class,
54 'setCustomLineItemCustomType' => OrderSetCustomLineItemCustomTypeActionModel::class,
55 'setCustomLineItemShippingDetails' => OrderSetCustomLineItemShippingDetailsActionModel::class,
56 'setCustomType' => OrderSetCustomTypeActionModel::class,
57 'setCustomerEmail' => OrderSetCustomerEmailActionModel::class,
58 'setCustomerId' => OrderSetCustomerIdActionModel::class,
59 'setDeliveryAddress' => OrderSetDeliveryAddressActionModel::class,
60 'setDeliveryAddressCustomField' => OrderSetDeliveryAddressCustomFieldActionModel::class,
61 'setDeliveryAddressCustomType' => OrderSetDeliveryAddressCustomTypeActionModel::class,
62 'setDeliveryCustomField' => OrderSetDeliveryCustomFieldActionModel::class,
63 'setDeliveryCustomType' => OrderSetDeliveryCustomTypeActionModel::class,
64 'setDeliveryItems' => OrderSetDeliveryItemsActionModel::class,
65 'setItemShippingAddressCustomField' => OrderSetItemShippingAddressCustomFieldActionModel::class,
66 'setItemShippingAddressCustomType' => OrderSetItemShippingAddressCustomTypeActionModel::class,
67 'setLineItemCustomField' => OrderSetLineItemCustomFieldActionModel::class,
68 'setLineItemCustomType' => OrderSetLineItemCustomTypeActionModel::class,
69 'setLineItemShippingDetails' => OrderSetLineItemShippingDetailsActionModel::class,
70 'setLocale' => OrderSetLocaleActionModel::class,
71 'setOrderNumber' => OrderSetOrderNumberActionModel::class,
72 'setParcelCustomField' => OrderSetParcelCustomFieldActionModel::class,
73 'setParcelCustomType' => OrderSetParcelCustomTypeActionModel::class,
74 'setParcelItems' => OrderSetParcelItemsActionModel::class,
75 'setParcelMeasurements' => OrderSetParcelMeasurementsActionModel::class,
76 'setParcelTrackingData' => OrderSetParcelTrackingDataActionModel::class,
77 'setPurchaseOrderNumber' => OrderSetPurchaseOrderNumberActionModel::class,
78 'setReturnInfo' => OrderSetReturnInfoActionModel::class,
79 'setReturnItemCustomField' => OrderSetReturnItemCustomFieldActionModel::class,
80 'setReturnItemCustomType' => OrderSetReturnItemCustomTypeActionModel::class,
81 'setReturnPaymentState' => OrderSetReturnPaymentStateActionModel::class,
82 'setReturnShipmentState' => OrderSetReturnShipmentStateActionModel::class,
83 'setShippingAddress' => OrderSetShippingAddressActionModel::class,
84 'setShippingAddressCustomField' => OrderSetShippingAddressCustomFieldActionModel::class,
85 'setShippingAddressCustomType' => OrderSetShippingAddressCustomTypeActionModel::class,
86 'setShippingCustomField' => OrderSetShippingCustomFieldActionModel::class,
87 'setShippingCustomType' => OrderSetShippingCustomTypeActionModel::class,
88 'setStore' => OrderSetStoreActionModel::class,
89 'transitionCustomLineItemState' => OrderTransitionCustomLineItemStateActionModel::class,
90 'transitionLineItemState' => OrderTransitionLineItemStateActionModel::class,
91 'transitionState' => OrderTransitionStateActionModel::class,
92 'updateItemShippingAddress' => OrderUpdateItemShippingAddressActionModel::class,
93 'updateSyncInfo' => OrderUpdateSyncInfoActionModel::class,
111 if (is_null($this->action)) {
113 $data = $this->
raw(self::FIELD_ACTION);
114 if (is_null($data)) {
117 $this->action = (string) $data;
134 if (is_object($value) && isset($value->$fieldName)) {
136 $discriminatorValue = $value->$fieldName;
137 if (isset(self::$discriminatorClasses[$discriminatorValue])) {
138 return self::$discriminatorClasses[$discriminatorValue];
141 if (is_array($value) && isset($value[$fieldName])) {
143 $discriminatorValue = $value[$fieldName];
144 if (isset(self::$discriminatorClasses[$discriminatorValue])) {
145 return self::$discriminatorClasses[$discriminatorValue];
150 $type = OrderUpdateActionModel::class;