*/ final class SerializedNameAnnotationStrategy implements PropertyNamingStrategyInterface { /** * @var PropertyNamingStrategyInterface */ private $delegate; public function __construct(PropertyNamingStrategyInterface $namingStrategy) { $this->delegate = $namingStrategy; } /** * {@inheritDoc} */ public function translateName(PropertyMetadata $property): string { if (null !== $name = $property->serializedName) { return $name; } return $this->delegate->translateName($property); } }