References ItemNormalizer
Reference
C
Class

ApiPlatform\JsonLd\Serializer\ItemNormalizer

Converts between objects and array including JSON-LD and Hydra metadata.

class ApiPlatform\JsonLd\Serializer\ItemNormalizer extends ApiPlatform\Serializer\AbstractItemNormalizer implements Symfony\Component\Serializer\SerializerAwareInterface, Symfony\Component\Serializer\Normalizer\DenormalizerInterface, Symfony\Component\Serializer\Normalizer\NormalizerInterface
{
    public __construct($resourceMetadataCollectionFactory, `<a href="/docs/main/references/Metadata/Property/Factory/PropertyNameCollectionFactoryInterface">ApiPlatform\Metadata\Property\Factory\PropertyNameCollectionFactoryInterface</a>` $propertyNameCollectionFactory, `<a href="/docs/main/references/Metadata/Property/Factory/PropertyMetadataFactoryInterface">ApiPlatform\Metadata\Property\Factory\PropertyMetadataFactoryInterface</a>` $propertyMetadataFactory, `<a href="/docs/main/references/Api/IriConverterInterface">ApiPlatform\Metadata\IriConverterInterface</a>`|`<a href="/docs/main/references/Api/IriConverterInterface">ApiPlatform\Api\IriConverterInterface</a>` $iriConverter, `<a href="/docs/main/references/Api/ResourceClassResolverInterface">ApiPlatform\Metadata\ResourceClassResolverInterface</a>`|`<a href="/docs/main/references/Api/ResourceClassResolverInterface">ApiPlatform\Api\ResourceClassResolverInterface</a>` $resourceClassResolver, `<a href="/docs/main/references/JsonLd/ContextBuilderInterface">ApiPlatform\JsonLd\ContextBuilderInterface</a>` $contextBuilder, null|Symfony\Component\PropertyAccess\PropertyAccessorInterface $propertyAccessor, null|Symfony\Component\Serializer\NameConverter\NameConverterInterface $nameConverter, null|Symfony\Component\Serializer\Mapping\Factory\ClassMetadataFactoryInterface $classMetadataFactory, array $defaultContext, null|`<a href="/docs/main/references/Metadata/ResourceAccessCheckerInterface">ApiPlatform\Metadata\ResourceAccessCheckerInterface</a>` $resourceAccessChecker, null|`<a href="/docs/main/references/Serializer/TagCollectorInterface">ApiPlatform\Serializer\TagCollectorInterface $tagCollector)
    public supportsNormalization($data, null|string $format, array $context): bool
    public getSupportedTypes($format): array
    public normalize($object, null|string $format, array $context): ArrayObject|array|string|int|float|bool
    public supportsDenormalization($data, string $type, null|string $format, array $context): bool
    public denormalize($data, string $class, null|string $format, array $context)
    public hasCacheableSupportsMethod(): bool
    protected instantiateObject(array $data, string $class, array $context, ReflectionClass $reflectionClass, array|bool $allowedAttributes, null|string $format): object
    protected getClassDiscriminatorResolvedClass(array $data, string $class, array $context): string
    protected createConstructorArgument($parameterData, string $key, ReflectionParameter $constructorParameter, array $context, null|string $format)
    protected extractAttributes($object, $format, array $context): array&lt;int, string&gt;
    protected getAllowedAttributes(object|string $classOrObject, array $context, bool $attributesAsString): array|bool
    protected isAllowedAttribute(object|string $classOrObject, string $attribute, null|string $format, array $context): bool
    protected canAccessAttribute(null|object $object, string $attribute, array $context): bool
    protected canAccessAttributePostDenormalize(null|object $object, null|object $previousObject, string $attribute, array $context): bool
    protected setAttributeValue(object $object, string $attribute, $value, null|string $format, array $context): null
    protected validateType(string $attribute, Symfony\Component\PropertyInfo\Type $type, $value, null|string $format, array $context): null
    protected denormalizeCollection(string $attribute, ApiPlatform\Metadata\ApiProperty $propertyMetadata, Symfony\Component\PropertyInfo\Type $type, string $className, $value, null|string $format, array $context): array
    protected denormalizeRelation(string $attributeName, ApiPlatform\Metadata\ApiProperty $propertyMetadata, string $className, $value, null|string $format, array $context): object
    protected getFactoryOptions(array $context): array
    protected getAttributeValue(object $object, string $attribute, null|string $format, array $context)
    protected normalizeCollectionOfRelations(ApiPlatform\Metadata\ApiProperty $propertyMetadata, iterable $attributeValue, string $resourceClass, null|string $format, array $context): array
    protected normalizeRelation(ApiPlatform\Metadata\ApiProperty $propertyMetadata, null|object $relatedObject, string $resourceClass, null|string $format, array $context): ArrayObject|array|string
    protected getAttributes(object $object, null|string $format, array $context): array&lt;int, string&gt;
    protected denormalizeParameter(ReflectionClass $class, ReflectionParameter $parameter, string $parameterName, $parameterData, array $context, null|string $format)
    protected createChildContext(array $parentContext, string $attribute, null|string $format): array
    protected isCircularReference(object $object, array $context): bool
    protected handleCircularReference(object $object, null|string $format, array $context)
    protected getGroups(array $context): array
    protected prepareForDenormalization($data): array
    protected getConstructor(array $data, string $class, array $context, ReflectionClass $reflectionClass, array|bool $allowedAttributes): ReflectionMethod
    protected validateCallbackContext(array $context, string $contextType): null
    protected applyCallbacks($value, object|string $object, string $attribute, null|string $format, array $context)
    protected getAttributeNormalizationContext(object $object, string $attribute, array $context): array
    protected getAttributeDenormalizationContext(string $class, string $attribute, array $context): array
    protected getAttributeMetadata(object|string $objectOrClass, string $attribute): Symfony\Component\Serializer\Mapping\AttributeMetadataInterface
    protected extractObjectToPopulate(string $class, array $context, null|string $key): object
    public setSerializer(Symfony\Component\Serializer\SerializerInterface $serializer): null
    public clone($data)
    protected getInputClass(array $context): string
    protected getOutputClass(array $context): string
    protected createOperationContext(array $context, null|string $resourceClass): array
}

Properties

tagCollector

propertyAccessor

Symfony\Component\PropertyAccess\PropertyAccessorInterface $propertyAccessor

localCache

array $localCache

localFactoryOptionsCache

array $localFactoryOptionsCache

resourceAccessChecker

propertyNameCollectionFactory

propertyMetadataFactory

iriConverter

resourceClassResolver

classDiscriminatorResolver

Symfony\Component\Serializer\Mapping\ClassDiscriminatorResolverInterface $classDiscriminatorResolver

defaultContext

array $defaultContext

classMetadataFactory

Symfony\Component\Serializer\Mapping\Factory\ClassMetadataFactoryInterface $classMetadataFactory

nameConverter

Symfony\Component\Serializer\NameConverter\NameConverterInterface $nameConverter

serializer

Symfony\Component\Serializer\SerializerInterface $serializer

resourceMetadataCollectionFactory

Methods

__construct

public __construct($resourceMetadataCollectionFactory, `<a href="/docs/main/references/Metadata/Property/Factory/PropertyNameCollectionFactoryInterface">ApiPlatform\Metadata\Property\Factory\PropertyNameCollectionFactoryInterface</a>` $propertyNameCollectionFactory, `<a href="/docs/main/references/Metadata/Property/Factory/PropertyMetadataFactoryInterface">ApiPlatform\Metadata\Property\Factory\PropertyMetadataFactoryInterface</a>` $propertyMetadataFactory, `<a href="/docs/main/references/Api/IriConverterInterface">ApiPlatform\Metadata\IriConverterInterface</a>`|`<a href="/docs/main/references/Api/IriConverterInterface">ApiPlatform\Api\IriConverterInterface</a>` $iriConverter, `<a href="/docs/main/references/Api/ResourceClassResolverInterface">ApiPlatform\Metadata\ResourceClassResolverInterface</a>`|`<a href="/docs/main/references/Api/ResourceClassResolverInterface">ApiPlatform\Api\ResourceClassResolverInterface</a>` $resourceClassResolver, `<a href="/docs/main/references/JsonLd/ContextBuilderInterface">ApiPlatform\JsonLd\ContextBuilderInterface</a>` $contextBuilder, null|Symfony\Component\PropertyAccess\PropertyAccessorInterface $propertyAccessor, null|Symfony\Component\Serializer\NameConverter\NameConverterInterface $nameConverter, null|Symfony\Component\Serializer\Mapping\Factory\ClassMetadataFactoryInterface $classMetadataFactory, array $defaultContext, null|`<a href="/docs/main/references/Metadata/ResourceAccessCheckerInterface">ApiPlatform\Metadata\ResourceAccessCheckerInterface</a>` $resourceAccessChecker, null|`<a href="/docs/main/references/Serializer/TagCollectorInterface">ApiPlatform\Serializer\TagCollectorInterface $tagCollector)

Parameters

resourceMetadataCollectionFactory`ApiPlatform\Metadata\Resource\Factory\ResourceMetadataCollectionFactoryInterface`
propertyNameCollectionFactory`ApiPlatform\Metadata\Property\Factory\PropertyNameCollectionFactoryInterface`
propertyMetadataFactory`ApiPlatform\Metadata\Property\Factory\PropertyMetadataFactoryInterface`
iriConverter`ApiPlatform\Metadata\IriConverterInterface`
`ApiPlatform\Api\IriConverterInterface`
resourceClassResolver`ApiPlatform\Metadata\ResourceClassResolverInterface`
`ApiPlatform\Api\ResourceClassResolverInterface`
contextBuilder`ApiPlatform\JsonLd\ContextBuilderInterface`
propertyAccessorSymfony\Component\PropertyAccess\PropertyAccessorInterface
nameConverterSymfony\Component\Serializer\NameConverter\NameConverterInterface
classMetadataFactorySymfony\Component\Serializer\Mapping\Factory\ClassMetadataFactoryInterface
defaultContextarray
resourceAccessChecker`ApiPlatform\Metadata\ResourceAccessCheckerInterface`
tagCollector`ApiPlatform\Serializer\TagCollectorInterface`

supportsNormalization

Checks whether the given class is supported for normalization by this normalizer.Checks whether the given class is supported for normalization by this normalizer.

public supportsNormalization($data, null|string $format, array $context): bool

Parameters

data
formatstring
contextarray

Returns

bool

getSupportedTypes

public getSupportedTypes($format): array

Parameters

format

Returns

array

normalize

Normalizes an object into a set of arrays/scalars.Normalizes an object into a set of arrays/scalars.

public normalize($object, null|string $format, array $context): ArrayObject|array|string|int|float|bool

Parameters

object
formatstring
contextarray

Returns

ArrayObject
array
string
int
float
bool

supportsDenormalization

Checks whether the given class is supported for denormalization by this normalizer.Checks whether the given class is supported for denormalization by this normalizer.

public supportsDenormalization($data, string $type, null|string $format, array $context): bool

Parameters

data
typestring
formatstring
contextarray

Returns

bool

denormalize

Denormalizes data back into an object of the given class.Denormalizes data back into an object of the given class.

public denormalize($data, string $class, null|string $format, array $context)

Parameters

data
classstring
formatstring
contextarray

Returns

Made with love by

Les-Tilleuls.coop can help you design and develop your APIs and web projects, and train your teams in API Platform, Symfony, Next.js, Kubernetes and a wide range of other technologies.

Learn more

Copyright © 2023 Kévin Dunglas

Sponsored by Les-Tilleuls.coop