ContentEntityNormalizer
class ContentEntityNormalizer extends NormalizerBase (View source)
Converts the Drupal entity object structure to a HAL array structure.
Traits
A trait for providing fieldable entity normalization/denormalization methods.
Properties
| protected | $supportedInterfaceOrClass | {@inheritdoc} | |
| protected | $format | {@inheritdoc} | from NormalizerBase |
| protected EntityFieldManagerInterface | $entityFieldManager | The entity field manager. |
from FieldableEntityNormalizerTrait |
| protected EntityTypeManagerInterface | $entityTypeManager | The entity type manager. |
from FieldableEntityNormalizerTrait |
| protected EntityTypeRepositoryInterface | $entityTypeRepository | The entity type repository. |
from FieldableEntityNormalizerTrait |
| protected LinkManagerInterface | $linkManager | The hypermedia link manager. |
|
| protected ModuleHandlerInterface | $moduleHandler | The module handler. |
Methods
Implements \Symfony\Component\Serializer\Normalizer\DenormalizerInterface::supportsDenormalization()
Checks if the provided format is supported by this normalizer.
Determines the entity type ID to denormalize as.
Gets the entity type definition.
Denormalizes the bundle property so entity creation can use it.
Denormalizes entity data by denormalizing each field individually.
Returns the entity type repository.
Returns the entity field manager.
Returns the entity type manager.
Build the field item value using the incoming data.
Constructs a ContentEntityNormalizer object.
{@inheritdoc}
Implements \Symfony\Component\Serializer\Normalizer\DenormalizerInterface::denormalize().
Gets the typed data IDs for a type URI.
Details
supportsNormalization($data, $format = NULL)
{@inheritdoc}
supportsDenormalization($data, $type, $format = NULL)
Implements \Symfony\Component\Serializer\Normalizer\DenormalizerInterface::supportsDenormalization()
This class doesn't implement DenormalizerInterface, but most of its child classes do. Therefore, this method is implemented at this level to reduce code duplication.
protected bool
checkFormat(string $format = NULL)
Checks if the provided format is supported by this normalizer.
protected
addCacheableDependency(array $context, $data)
Adds cacheability if applicable.
protected string
determineEntityTypeId(string $class, array $context)
Determines the entity type ID to denormalize as.
protected EntityTypeInterface
getEntityTypeDefinition(string $entity_type_id)
Gets the entity type definition.
protected string
extractBundleData(array $data, EntityTypeInterface $entity_type_definition)
Denormalizes the bundle property so entity creation can use it.
protected
denormalizeFieldData(array $data, FieldableEntityInterface $entity, string $format, array $context)
Denormalizes entity data by denormalizing each field individually.
protected EntityTypeRepositoryInterface
getEntityTypeRepository()
Returns the entity type repository.
protected EntityFieldManagerInterface
getEntityFieldManager()
Returns the entity field manager.
protected EntityTypeManagerInterface
getEntityTypeManager()
Returns the entity type manager.
protected mixed
constructValue(mixed $data, array $context)
Build the field item value using the incoming data.
Most normalizers that extend this class can simply use this method to construct the denormalized value without having to override denormalize() and reimplementing its validation logic or its call to set the field value.
It's recommended to not override this and instead provide a (de)normalizer at the DataType level.
__construct(LinkManagerInterface $link_manager, EntityTypeManagerInterface $entity_type_manager, ModuleHandlerInterface $module_handler, EntityTypeRepositoryInterface $entity_type_repository, EntityFieldManagerInterface $entity_field_manager)
Constructs a ContentEntityNormalizer object.
normalize($entity, $format = NULL, array $context = [])
{@inheritdoc}
EntityInterface
denormalize(array $data, string $class, string $format = NULL, array $context = [])
Implements \Symfony\Component\Serializer\Normalizer\DenormalizerInterface::denormalize().
protected string
getEntityUri(EntityInterface $entity, array $context = [])
Constructs the entity URI.
protected array
getTypedDataIds(array $types, array $context = [])
Gets the typed data IDs for a type URI.