public static ConfigEntityBase::preDelete(EntityStorageInterface $storage, array $entities)
Acts on entities before they are deleted and before hooks are invoked.
Used before the entities are deleted and before invoking the delete hook.
Parameters
\Drupal\Core\Entity\EntityStorageInterface $storage: The entity storage object.
\Drupal\Core\Entity\EntityInterface[] $entities: An array of entities.
Overrides Entity::preDelete
File
- core/lib/Drupal/Core/Config/Entity/ConfigEntityBase.php, line 580
Class
- ConfigEntityBase
- Defines a base configuration entity class.
Namespace
Drupal\Core\Config\Entity
Code
public static function preDelete(EntityStorageInterface $storage, array $entities) { parent::preDelete($storage, $entities); foreach ($entities as $entity) { if ($entity->isUninstalling() || $entity->isSyncing()) { // During extension uninstall and configuration synchronization // deletions are already managed. break; } // Fix or remove any dependencies. $config_entities = static::getConfigManager()->getConfigEntitiesToChangeOnDependencyRemoval('config', [$entity->getConfigDependencyName()], FALSE); /** @var \Drupal\Core\Config\Entity\ConfigEntityInterface $dependent_entity */ foreach ($config_entities['update'] as $dependent_entity) { $dependent_entity->save(); } foreach ($config_entities['delete'] as $dependent_entity) { $dependent_entity->delete(); } } }
Please login to continue.