function TypedDataInternalPropertiesHelper::getNonInternalProperties

Same name in other branches
  1. 8.9.x core/lib/Drupal/Core/TypedData/TypedDataInternalPropertiesHelper.php \Drupal\Core\TypedData\TypedDataInternalPropertiesHelper::getNonInternalProperties()
  2. 10 core/lib/Drupal/Core/TypedData/TypedDataInternalPropertiesHelper.php \Drupal\Core\TypedData\TypedDataInternalPropertiesHelper::getNonInternalProperties()
  3. 11.x 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
ContentEntityNormalizer::normalize in core/modules/serialization/src/Normalizer/ContentEntityNormalizer.php
ContentEntityNormalizer::normalize in core/modules/hal/src/Normalizer/ContentEntityNormalizer.php
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();
    });
}

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