ApiPlatform\Core\Bridge\NelmioApiDoc\Parser\ApiPlatformParser::parseResource PHP Method

parseResource() private method

Parses a class.
private parseResource ( ResourceMetadata $resourceMetadata, string $resourceClass, string $io, array $visited = [] ) : array
$resourceMetadata ApiPlatform\Core\Metadata\Resource\ResourceMetadata
$resourceClass string
$io string
$visited array
return array
    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);
    }