function RelationshipNormalizer::normalize

Same name and namespace in other branches
  1. 9 core/modules/jsonapi/src/Normalizer/RelationshipNormalizer.php \Drupal\jsonapi\Normalizer\RelationshipNormalizer::normalize()
  2. 8.9.x core/modules/jsonapi/src/Normalizer/RelationshipNormalizer.php \Drupal\jsonapi\Normalizer\RelationshipNormalizer::normalize()

File

core/modules/jsonapi/src/Normalizer/RelationshipNormalizer.php, line 18

Class

RelationshipNormalizer
Normalizes a JSON:API relationship object.

Namespace

Drupal\jsonapi\Normalizer

Code

public function normalize($object, $format = NULL, array $context = []) : array|string|int|float|bool|\ArrayObject|null {
  assert($object instanceof Relationship);
  return CacheableNormalization::aggregate([
    'data' => $this->serializer
      ->normalize($object->getData(), $format, $context),
    'links' => $this->serializer
      ->normalize($object->getLinks(), $format, $context)
      ->omitIfEmpty(),
    'meta' => CacheableNormalization::permanent($object->getMeta())
      ->omitIfEmpty(),
  ]);
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.