function MigrateEntity::getDerivativeDefinitions

Same name and namespace in other branches
  1. 11.x core/modules/migrate/src/Plugin/Derivative/MigrateEntity.php \Drupal\migrate\Plugin\Derivative\MigrateEntity::getDerivativeDefinitions()
  2. 10 core/modules/migrate/src/Plugin/Derivative/MigrateEntity.php \Drupal\migrate\Plugin\Derivative\MigrateEntity::getDerivativeDefinitions()
  3. 9 core/modules/migrate/src/Plugin/Derivative/MigrateEntity.php \Drupal\migrate\Plugin\Derivative\MigrateEntity::getDerivativeDefinitions()
  4. 8.9.x core/modules/migrate/src/Plugin/Derivative/MigrateEntity.php \Drupal\migrate\Plugin\Derivative\MigrateEntity::getDerivativeDefinitions()

Gets the definition of all derivatives of a base plugin.

Parameters

array|\Drupal\Component\Plugin\Definition\PluginDefinitionInterface $base_plugin_definition: The definition of the base plugin from which the derivative plugin is derived. It is maybe an entire object or just some array, depending on the discovery mechanism.

Return value

array An array of full derivative definitions keyed on derivative id.

Overrides DeriverInterface::getDerivativeDefinitions

1 call to MigrateEntity::getDerivativeDefinitions()
MigrateEntity::getDerivativeDefinition in core/modules/migrate/src/Plugin/Derivative/MigrateEntity.php
Gets the definition of a derivative plugin.
1 method overrides MigrateEntity::getDerivativeDefinitions()
MigrateEntityComplete::getDerivativeDefinitions in core/modules/migrate/src/Plugin/Derivative/MigrateEntityComplete.php
Gets the definition of all derivatives of a base plugin.

File

core/modules/migrate/src/Plugin/Derivative/MigrateEntity.php, line 60

Class

MigrateEntity
The migrate entity deriver.

Namespace

Drupal\migrate\Plugin\Derivative

Code

public function getDerivativeDefinitions($base_plugin_definition) {
  foreach ($this->entityDefinitions as $entity_type => $entity_info) {
    $class = is_subclass_of($entity_info->getClass(), 'Drupal\\Core\\Config\\Entity\\ConfigEntityInterface') ? 'Drupal\\migrate\\Plugin\\migrate\\destination\\EntityConfigBase' : 'Drupal\\migrate\\Plugin\\migrate\\destination\\EntityContentBase';
    $this->derivatives[$entity_type] = [
      'id' => "entity:{$entity_type}",
      'class' => $class,
      'requirements_met' => 1,
      'provider' => $entity_info->getProvider(),
    ];
  }
  return $this->derivatives;
}

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