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
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | 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.