33 private static $discriminatorClasses = [
34 'addCountry' => StoreAddCountryActionModel::class,
35 'addDistributionChannel' => StoreAddDistributionChannelActionModel::class,
36 'addProductSelection' => StoreAddProductSelectionActionModel::class,
37 'addSupplyChannel' => StoreAddSupplyChannelActionModel::class,
38 'changeProductSelectionActive' => StoreChangeProductSelectionActionModel::class,
39 'removeCountry' => StoreRemoveCountryActionModel::class,
40 'removeDistributionChannel' => StoreRemoveDistributionChannelActionModel::class,
41 'removeProductSelection' => StoreRemoveProductSelectionActionModel::class,
42 'removeSupplyChannel' => StoreRemoveSupplyChannelActionModel::class,
43 'setCheckoutUrlTemplate' => StoreSetCheckoutUrlTemplateActionModel::class,
44 'setContactUrl' => StoreSetContactUrlActionModel::class,
45 'setCookiePolicyUrl' => StoreSetCookiePolicyUrlActionModel::class,
46 'setCountries' => StoreSetCountriesActionModel::class,
47 'setCustomField' => StoreSetCustomFieldActionModel::class,
48 'setCustomType' => StoreSetCustomTypeActionModel::class,
49 'setDistributionChannels' => StoreSetDistributionChannelsActionModel::class,
50 'setFaqUrl' => StoreSetFaqUrlActionModel::class,
51 'setImprintUrl' => StoreSetImprintUrlActionModel::class,
52 'setLanguages' => StoreSetLanguagesActionModel::class,
53 'setName' => StoreSetNameActionModel::class,
54 'setOrderUrlTemplate' => StoreSetOrderUrlTemplateActionModel::class,
55 'setPrivacyPolicyUrl' => StoreSetPrivacyPolicyUrlActionModel::class,
56 'setProductSelections' => StoreSetProductSelectionsActionModel::class,
57 'setRefundPolicyUrl' => StoreSetRefundPolicyUrlActionModel::class,
58 'setShippingPolicyUrl' => StoreSetShippingPolicyUrlActionModel::class,
59 'setSupplyChannels' => StoreSetSupplyChannelsActionModel::class,
60 'setTermsOfServiceUrl' => StoreSetTermsOfServiceUrlActionModel::class,
78 if (is_null($this->action)) {
80 $data = $this->
raw(self::FIELD_ACTION);
84 $this->action = (string) $data;
101 if (is_object($value) && isset($value->$fieldName)) {
103 $discriminatorValue = $value->$fieldName;
104 if (isset(self::$discriminatorClasses[$discriminatorValue])) {
105 return self::$discriminatorClasses[$discriminatorValue];
108 if (is_array($value) && isset($value[$fieldName])) {
110 $discriminatorValue = $value[$fieldName];
111 if (isset(self::$discriminatorClasses[$discriminatorValue])) {
112 return self::$discriminatorClasses[$discriminatorValue];
117 $type = StoreUpdateActionModel::class;