getAttributes(MapRequestPayload::class, ArgumentMetadata::IS_INSTANCEOF)[0] ?? null) { return; } $modelRef = $this->modelRegistry->register(new Model( new Type(Type::BUILTIN_TYPE_OBJECT, false, $argumentMetadata->getType()), groups: $this->getGroups($attribute), serializationContext: $attribute->serializationContext, )); $operation->_context->{self::CONTEXT_ARGUMENT_METADATA} = $argumentMetadata; $operation->_context->{self::CONTEXT_MODEL_REF} = $modelRef; } /** * @return string[]|null */ private function getGroups(MapRequestPayload $attribute): ?array { if (null === $attribute->validationGroups) { return null; } if (is_string($attribute->validationGroups)) { return [$attribute->validationGroups]; } if (is_array($attribute->validationGroups)) { return $attribute->validationGroups; } if ($attribute->validationGroups instanceof GroupSequence) { return $attribute->validationGroups->groups; } return null; } }