Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. ClassDiscriminatorFromClassMetadata.php

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\Mapping

Code

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];
}
RSS feed
Powered by Drupal