You are here

public function EntityViewDisplay::getPluginCollections in Drupal 9

Same name and namespace in other branches
  1. 8 core/lib/Drupal/Core/Entity/Entity/EntityViewDisplay.php \Drupal\Core\Entity\Entity\EntityViewDisplay::getPluginCollections()

Gets the plugin collections used by this object.

Return value

\Drupal\Component\Plugin\LazyPluginCollection[] An array of plugin collections, keyed by the property name they use to store their configuration.

Overrides ObjectWithPluginCollectionInterface::getPluginCollections

File

core/lib/Drupal/Core/Entity/Entity/EntityViewDisplay.php, line 293

Class

EntityViewDisplay
Configuration entity that contains display options for all components of a rendered entity in a given view mode.

Namespace

Drupal\Core\Entity\Entity

Code

public function getPluginCollections() {
  $configurations = [];
  foreach ($this
    ->getComponents() as $field_name => $configuration) {
    if (!empty($configuration['type']) && ($field_definition = $this
      ->getFieldDefinition($field_name))) {
      $configurations[$configuration['type']] = $configuration + [
        'field_definition' => $field_definition,
        'view_mode' => $this->originalMode,
      ];
    }
  }
  return [
    'formatters' => new EntityDisplayPluginCollection($this->pluginManager, $configurations),
  ];
}