public function create(string $resourceClass, string $property, array $options = []) : PropertyMetadata
{
$propertyMetadata = $this->decorated->create($resourceClass, $property, $options);
// in case of a property inherited (in a child class), we need it's properties
// to be mapped against serialization groups instead of the parent ones.
if (null !== ($childResourceClass = $propertyMetadata->isChildInherited())) {
$resourceClass = $childResourceClass;
}
list($normalizationGroups, $denormalizationGroups) = $this->getEffectiveSerializerGroups($options, $resourceClass);
$propertyMetadata = $this->transformReadWrite($propertyMetadata, $resourceClass, $property, $normalizationGroups, $denormalizationGroups);
$propertyMetadata = $this->transformLinkStatus($propertyMetadata, $normalizationGroups, $denormalizationGroups);
return $propertyMetadata;
}