private function parseResource(ResourceMetadata $resourceMetadata, string $resourceClass, string $io, array $visited = []) : array
{
$visited[] = $resourceClass;
$options = [];
$attributes = $resourceMetadata->getAttributes();
if (isset($attributes['normalization_context']['groups'])) {
$options['serializer_groups'] = $attributes['normalization_context']['groups'];
}
if (isset($attributes['denormalization_context']['groups'])) {
if (isset($options['serializer_groups'])) {
$options['serializer_groups'] += $attributes['denormalization_context']['groups'];
} else {
$options['serializer_groups'] = $attributes['denormalization_context']['groups'];
}
}
return $this->getPropertyMetadata($resourceMetadata, $resourceClass, $io, $visited, $options);
}