class FieldNormalizer extends NormalizerBase implements DenormalizerInterface (View source)

internal  JSON:API maintains no PHP API since its API is the HTTP API. This class may change at any time and this will break any dependencies on it.
 

Converts the Drupal field structure to a JSON:API array structure.

Traits

SerializerAwareTrait

Properties

protected string $supportedInterfaceOrClass

The interface or class that this Normalizer supports.

protected $format {@inheritdoc} from  NormalizerBase

Methods

supportsNormalization($data, $format = NULL)

{@inheritdoc}

supportsDenormalization($data, $type, $format = NULL)

Implements \Symfony\Component\Serializer\Normalizer\DenormalizerInterface::supportsDenormalization()

bool
checkFormat(string $format = NULL)

Checks if the provided format is supported by this normalizer.

addCacheableDependency(array $context, $data)

Adds cacheability if applicable.

bool
hasCacheableSupportsMethod()

{@inheritdoc}

static mixed
rasterizeValueRecursive(mixed $value)

Rasterizes a value recursively.

normalize($field, $format = NULL, array $context = [])

{@inheritdoc}

denormalize($data, $class, $format = NULL, array $context = [])

{@inheritdoc}

FieldItemNormalizerValue[]
normalizeFieldItems(FieldItemListInterface $field, string $format, array $context)

Helper function to normalize field items.

Details

supportsNormalization($data, $format = NULL)

{@inheritdoc}

Parameters

$data
$format

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.

Parameters

$data
$type
$format

protected bool checkFormat(string $format = NULL)

Checks if the provided format is supported by this normalizer.

Parameters

string $format

The format to check.

Return Value

bool

TRUE if the format is supported, FALSE otherwise. If no format is specified this will return TRUE.

protected addCacheableDependency(array $context, $data)

Adds cacheability if applicable.

Parameters

array $context

Context options for the normalizer.

$data

The data that might have cacheability information.

bool hasCacheableSupportsMethod()

{@inheritdoc}

Return Value

bool

static protected mixed rasterizeValueRecursive(mixed $value)

Rasterizes a value recursively.

This is mainly for configuration entities where a field can be a tree of values to rasterize.

Parameters

mixed $value

Either a scalar, an array or a rasterizable object.

Return Value

mixed

The rasterized value.

normalize($field, $format = NULL, array $context = [])

{@inheritdoc}

Parameters

$field
$format
array $context

denormalize($data, $class, $format = NULL, array $context = [])

{@inheritdoc}

Parameters

$data
$class
$format
array $context

protected FieldItemNormalizerValue[] normalizeFieldItems(FieldItemListInterface $field, string $format, array $context)

Helper function to normalize field items.

Parameters

FieldItemListInterface $field

The field object.

string $format

The format.

array $context

The context array.

Return Value

FieldItemNormalizerValue[]

The array of normalized field items.