commercetools-sdk-php-v2
The commercetools platform, import-api and PHP sdks generated from our api reference.
Loading...
Searching...
No Matches
PaymentUpdateActionModel.php
1<?php
2
3declare(strict_types=1);
10
15use stdClass;
16
21{
22 public const DISCRIMINATOR_VALUE = '';
27 protected $action;
28
33 private static $discriminatorClasses = [
34 'addInterfaceInteraction' => PaymentAddInterfaceInteractionActionModel::class,
35 'addTransaction' => PaymentAddTransactionActionModel::class,
36 'changeAmountPlanned' => PaymentChangeAmountPlannedActionModel::class,
37 'changeTransactionInteractionId' => PaymentChangeTransactionInteractionIdActionModel::class,
38 'changeTransactionState' => PaymentChangeTransactionStateActionModel::class,
39 'changeTransactionTimestamp' => PaymentChangeTransactionTimestampActionModel::class,
40 'setAnonymousId' => PaymentSetAnonymousIdActionModel::class,
41 'setCustomField' => PaymentSetCustomFieldActionModel::class,
42 'setCustomType' => PaymentSetCustomTypeActionModel::class,
43 'setCustomer' => PaymentSetCustomerActionModel::class,
44 'setInterfaceId' => PaymentSetInterfaceIdActionModel::class,
45 'setKey' => PaymentSetKeyActionModel::class,
46 'setMethodInfo' => PaymentSetMethodInfoActionModel::class,
47 'setMethodInfoCustomField' => PaymentSetMethodInfoCustomFieldActionModel::class,
48 'setMethodInfoCustomType' => PaymentSetMethodInfoCustomTypeActionModel::class,
49 'setMethodInfoInterface' => PaymentSetMethodInfoInterfaceActionModel::class,
50 'setMethodInfoInterfaceAccount' => PaymentSetMethodInfoInterfaceAccountActionModel::class,
51 'setMethodInfoMethod' => PaymentSetMethodInfoMethodActionModel::class,
52 'setMethodInfoName' => PaymentSetMethodInfoNameActionModel::class,
53 'setMethodInfoToken' => PaymentSetMethodInfoTokenActionModel::class,
54 'setStatusInterfaceCode' => PaymentSetStatusInterfaceCodeActionModel::class,
55 'setStatusInterfaceText' => PaymentSetStatusInterfaceTextActionModel::class,
56 'setTransactionCustomField' => PaymentSetTransactionCustomFieldActionModel::class,
57 'setTransactionCustomType' => PaymentSetTransactionCustomTypeActionModel::class,
58 'setTransactionInterfaceId' => PaymentSetTransactionInterfaceIdActionModel::class,
59 'transitionState' => PaymentTransitionStateActionModel::class,
60 ];
61
65 public function __construct(
66 ?string $action = null
67 ) {
68 $this->action = $action;
69 }
70
75 public function getAction()
76 {
77 if (is_null($this->action)) {
79 $data = $this->raw(self::FIELD_ACTION);
80 if (is_null($data)) {
81 return null;
82 }
83 $this->action = (string) $data;
84 }
85
86 return $this->action;
87 }
88
89
90
91
92
97 public static function resolveDiscriminatorClass($value): string
98 {
100 if (is_object($value) && isset($value->$fieldName)) {
102 $discriminatorValue = $value->$fieldName;
103 if (isset(self::$discriminatorClasses[$discriminatorValue])) {
104 return self::$discriminatorClasses[$discriminatorValue];
105 }
106 }
107 if (is_array($value) && isset($value[$fieldName])) {
109 $discriminatorValue = $value[$fieldName];
110 if (isset(self::$discriminatorClasses[$discriminatorValue])) {
111 return self::$discriminatorClasses[$discriminatorValue];
112 }
113 }
114
116 $type = PaymentUpdateActionModel::class;
117 return $type;
118 }
119}