ApiPlatform\Core\Hydra\Serializer\DocumentationNormalizer::getProperty PHP Method

getProperty() private method

Gets a property definition.
private getProperty ( PropertyMetadata $propertyMetadata, string $propertyName, string $prefixedShortName, string $shortName ) : array
$propertyMetadata ApiPlatform\Core\Metadata\Property\PropertyMetadata
$propertyName string
$prefixedShortName string
$shortName string
return array
    private function getProperty(PropertyMetadata $propertyMetadata, string $propertyName, string $prefixedShortName, string $shortName) : array
    {
        $type = $propertyMetadata->isReadableLink() ? 'rdf:Property' : 'hydra:Link';
        $property = ['@type' => 'hydra:SupportedProperty', 'hydra:property' => ['@id' => ($iri = $propertyMetadata->getIri()) ? $iri : sprintf('#%s/%s', $shortName, $propertyName), '@type' => $type, 'rdfs:label' => $propertyName, 'domain' => $prefixedShortName], 'hydra:title' => $propertyName, 'hydra:required' => $propertyMetadata->isRequired(), 'hydra:readable' => $propertyMetadata->isReadable(), 'hydra:writable' => $propertyMetadata->isWritable()];
        if (null !== ($range = $this->getRange($propertyMetadata))) {
            $property['hydra:property']['range'] = $range;
        }
        if (null !== ($description = $propertyMetadata->getDescription())) {
            $property['hydra:description'] = $description;
        }
        return $property;
    }