You are here

public static function TypedDataInternalPropertiesHelper::getNonInternalProperties in Drupal 8

Same name and namespace in other branches
  1. 9 core/lib/Drupal/Core/TypedData/TypedDataInternalPropertiesHelper.php \Drupal\Core\TypedData\TypedDataInternalPropertiesHelper::getNonInternalProperties()

Gets an array non-internal properties from a complex data object.

Parameters

\Drupal\Core\TypedData\ComplexDataInterface $data: The complex data object.

Return value

\Drupal\Core\TypedData\TypedDataInterface[] The non-internal properties, keyed by property name.

8 calls to TypedDataInternalPropertiesHelper::getNonInternalProperties()
ComplexDataNormalizer::normalize in core/modules/serialization/src/Normalizer/ComplexDataNormalizer.php
Normalizes an object into a set of arrays/scalars.
ContentEntityNormalizer::normalize in core/modules/hal/src/Normalizer/ContentEntityNormalizer.php
Normalizes an object into a set of arrays/scalars.
ContentEntityNormalizer::normalize in core/modules/serialization/src/Normalizer/ContentEntityNormalizer.php
Normalizes an object into a set of arrays/scalars.
FieldItemNormalizer::normalize in core/modules/jsonapi/src/Normalizer/FieldItemNormalizer.php
This normalizer leaves JSON:API normalizer land and enters the land of Drupal core's serialization system. That system was never designed with cacheability in mind, and hence bubbles cacheability out of band. This must catch it, and pass it to…
FieldItemNormalizer::normalizedFieldValues in core/modules/hal/src/Normalizer/FieldItemNormalizer.php
Normalizes field values for an item.

... See full list

File

core/lib/Drupal/Core/TypedData/TypedDataInternalPropertiesHelper.php, line 19

Class

TypedDataInternalPropertiesHelper
Helper class for internal properties.

Namespace

Drupal\Core\TypedData

Code

public static function getNonInternalProperties(ComplexDataInterface $data) {
  return array_filter($data
    ->getProperties(TRUE), function (TypedDataInterface $property) {
    return !$property
      ->getDataDefinition()
      ->isInternal();
  });
}