function ClassDiscriminatorFromClassMetadata::getMappingForMappedObject
Overrides ClassDiscriminatorResolverInterface::getMappingForMappedObject
2 calls to ClassDiscriminatorFromClassMetadata::getMappingForMappedObject()
- ClassDiscriminatorFromClassMetadata::getTypeForMappedObject in vendor/
symfony/ serializer/ Mapping/ ClassDiscriminatorFromClassMetadata.php - ClassDiscriminatorFromClassMetadata::resolveMappingForMappedObject in vendor/
symfony/ serializer/ Mapping/ ClassDiscriminatorFromClassMetadata.php
File
-
vendor/
symfony/ serializer/ Mapping/ ClassDiscriminatorFromClassMetadata.php, line 37
Class
- ClassDiscriminatorFromClassMetadata
- @author Samuel Roze <samuel.roze@gmail.com>
Namespace
Symfony\Component\Serializer\MappingCode
public function getMappingForMappedObject(object|string $object) : ?ClassDiscriminatorMapping {
if ($this->classMetadataFactory
->hasMetadataFor($object)) {
$metadata = $this->classMetadataFactory
->getMetadataFor($object);
if (null !== $metadata->getClassDiscriminatorMapping()) {
return $metadata->getClassDiscriminatorMapping();
}
}
$cacheKey = \is_object($object) ? $object::class : $object;
if (!\array_key_exists($cacheKey, $this->mappingForMappedObjectCache)) {
$this->mappingForMappedObjectCache[$cacheKey] = $this->resolveMappingForMappedObject($object);
}
return $this->mappingForMappedObjectCache[$cacheKey];
}