commercetools-sdk-php-v2  master
The platform, import-api and ml-api PHP sdks generated from our api reference.
ErrorObjectModel.php
1 <?php
2 
3 declare(strict_types=1);
10 
15 use stdClass;
16 
20 final class ErrorObjectModel extends JsonObjectModel implements ErrorObject
21 {
22  public const DISCRIMINATOR_VALUE = '';
27  protected $code;
28 
33  protected $message;
34 
39  private static $discriminatorClasses = [
40  'ConcurrentModification' => ConcurrentModificationErrorModel::class,
41  'Contention' => ContentionErrorModel::class,
42  'DuplicateAttributeValue' => DuplicateAttributeValueErrorModel::class,
43  'DuplicateAttributeValues' => DuplicateAttributeValuesErrorModel::class,
44  'DuplicateField' => DuplicateFieldErrorModel::class,
45  'DuplicateVariantValues' => DuplicateVariantValuesErrorModel::class,
46  'Generic' => GenericErrorModel::class,
47  'InvalidCredentials' => InvalidCredentialsErrorModel::class,
48  'InvalidField' => InvalidFieldErrorModel::class,
49  'InvalidInput' => InvalidInputModel::class,
50  'InvalidJsonInput' => InvalidJsonInputModel::class,
51  'InvalidOperation' => InvalidOperationModel::class,
52  'InvalidTransition' => InvalidStateTransitionErrorModel::class,
53  'RequiredField' => RequiredFieldErrorModel::class,
54  'ResourceCreation' => ResourceCreationErrorModel::class,
55  'ResourceDeletion' => ResourceDeletionErrorModel::class,
56  'ResourceNotFound' => ResourceNotFoundErrorModel::class,
57  'ResourceUpdate' => ResourceUpdateErrorModel::class,
58  'access_denied' => AccessDeniedErrorModel::class,
59  'insufficient_scope' => InsufficientScopeErrorModel::class,
60  'invalid_scope' => InvalidScopeErrorModel::class,
61  'invalid_token' => InvalidTokenErrorModel::class,
62  ];
63 
67  public function __construct(
68  ?string $message = null,
69  ?string $code = null
70  ) {
71  $this->message = $message;
72  $this->code = $code;
73  }
74 
79  public function getCode()
80  {
81  if (is_null($this->code)) {
83  $data = $this->raw(self::FIELD_CODE);
84  if (is_null($data)) {
85  return null;
86  }
87  $this->code = (string) $data;
88  }
89 
90  return $this->code;
91  }
92 
97  public function getMessage()
98  {
99  if (is_null($this->message)) {
101  $data = $this->raw(self::FIELD_MESSAGE);
102  if (is_null($data)) {
103  return null;
104  }
105  $this->message = (string) $data;
106  }
107 
108  return $this->message;
109  }
110 
111 
115  public function setMessage(?string $message): void
116  {
117  $this->message = $message;
118  }
119 
120 
121 
126  public static function resolveDiscriminatorClass($value): string
127  {
129  if (is_object($value) && isset($value->$fieldName)) {
131  $discriminatorValue = $value->$fieldName;
132  if (isset(self::$discriminatorClasses[$discriminatorValue])) {
133  return self::$discriminatorClasses[$discriminatorValue];
134  }
135  }
136  if (is_array($value) && isset($value[$fieldName])) {
138  $discriminatorValue = $value[$fieldName];
139  if (isset(self::$discriminatorClasses[$discriminatorValue])) {
140  return self::$discriminatorClasses[$discriminatorValue];
141  }
142  }
143 
145  $type = ErrorObjectModel::class;
146  return $type;
147  }
148 }
__construct(?string $message=null, ?string $code=null)