commercetools-sdk-php-v2
The commercetools platform, import-api and PHP sdks generated from our api reference.
Loading...
Searching...
No Matches
SubscriptionNotificationModel.php
1<?php
2
3declare(strict_types=1);
10
15use stdClass;
16
21{
22 public const DISCRIMINATOR_VALUE = '';
28
33 private static $discriminatorClasses = [
34 'Event' => EventDeliveryPayloadModel::class,
35 'Message' => MessageDeliveryPayloadModel::class,
36 'ResourceCreated' => ResourceCreatedDeliveryPayloadModel::class,
37 'ResourceDeleted' => ResourceDeletedDeliveryPayloadModel::class,
38 'ResourceUpdated' => ResourceUpdatedDeliveryPayloadModel::class,
39 ];
40
44 public function __construct(
45 ?string $notificationType = null
46 ) {
47 $this->notificationType = $notificationType;
48 }
49
56 public function getNotificationType()
57 {
58 if (is_null($this->notificationType)) {
60 $data = $this->raw(self::FIELD_NOTIFICATION_TYPE);
61 if (is_null($data)) {
62 return null;
63 }
64 $this->notificationType = (string) $data;
65 }
66
68 }
69
70
71
72
73
78 public static function resolveDiscriminatorClass($value): string
79 {
81 if (is_object($value) && isset($value->$fieldName)) {
83 $discriminatorValue = $value->$fieldName;
84 if (isset(self::$discriminatorClasses[$discriminatorValue])) {
85 return self::$discriminatorClasses[$discriminatorValue];
86 }
87 }
88 if (is_array($value) && isset($value[$fieldName])) {
90 $discriminatorValue = $value[$fieldName];
91 if (isset(self::$discriminatorClasses[$discriminatorValue])) {
92 return self::$discriminatorClasses[$discriminatorValue];
93 }
94 }
95
97 $type = SubscriptionNotificationModel::class;
98 return $type;
99 }
100}