33 private static $discriminatorClasses = [
34 'addQuantity' => InventoryEntryAddQuantityActionModel::class,
35 'changeQuantity' => InventoryEntryChangeQuantityActionModel::class,
36 'removeQuantity' => InventoryEntryRemoveQuantityActionModel::class,
37 'setCustomField' => InventoryEntrySetCustomFieldActionModel::class,
38 'setCustomType' => InventoryEntrySetCustomTypeActionModel::class,
39 'setExpectedDelivery' => InventoryEntrySetExpectedDeliveryActionModel::class,
40 'setInventoryLimits' => InventoryEntrySetInventoryLimitsActionModel::class,
41 'setKey' => InventoryEntrySetKeyActionModel::class,
42 'setRestockableInDays' => InventoryEntrySetRestockableInDaysActionModel::class,
43 'setSupplyChannel' => InventoryEntrySetSupplyChannelActionModel::class,
61 if (is_null($this->action)) {
63 $data = $this->
raw(self::FIELD_ACTION);
67 $this->action = (string) $data;
84 if (is_object($value) && isset($value->$fieldName)) {
86 $discriminatorValue = $value->$fieldName;
87 if (isset(self::$discriminatorClasses[$discriminatorValue])) {
88 return self::$discriminatorClasses[$discriminatorValue];
91 if (is_array($value) && isset($value[$fieldName])) {
93 $discriminatorValue = $value[$fieldName];
94 if (isset(self::$discriminatorClasses[$discriminatorValue])) {
95 return self::$discriminatorClasses[$discriminatorValue];
100 $type = InventoryEntryUpdateActionModel::class;