3 declare(strict_types=1);
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,
81 if (is_null($this->code)) {
83 $data = $this->
raw(self::FIELD_CODE);
87 $this->code = (string) $data;
99 if (is_null($this->message)) {
101 $data = $this->
raw(self::FIELD_MESSAGE);
102 if (is_null($data)) {
105 $this->message = (string) $data;
129 if (is_object($value) && isset($value->$fieldName)) {
131 $discriminatorValue = $value->$fieldName;
132 if (isset(self::$discriminatorClasses[$discriminatorValue])) {
133 return self::$discriminatorClasses[$discriminatorValue];
136 if (is_array($value) && isset($value[$fieldName])) {
138 $discriminatorValue = $value[$fieldName];
139 if (isset(self::$discriminatorClasses[$discriminatorValue])) {
140 return self::$discriminatorClasses[$discriminatorValue];
145 $type = ErrorObjectModel::class;