protected SqlContentEntityStorage::deleteFromDedicatedTables(ContentEntityInterface $entity)
Deletes values of fields in dedicated tables for all revisions.
\Drupal\Core\Entity\ContentEntityInterface $entity: The entity.
protected function deleteFromDedicatedTables(ContentEntityInterface $entity) { $table_mapping = $this->getTableMapping(); foreach ($this->entityManager->getFieldDefinitions($entity->getEntityTypeId(), $entity->bundle()) as $field_definition) { $storage_definition = $field_definition->getFieldStorageDefinition(); if (!$table_mapping->requiresDedicatedTableStorage($storage_definition)) { continue; } $table_name = $table_mapping->getDedicatedDataTableName($storage_definition); $revision_name = $table_mapping->getDedicatedRevisionTableName($storage_definition); $this->database->delete($table_name) ->condition('entity_id', $entity->id()) ->execute(); if ($this->entityType->isRevisionable()) { $this->database->delete($revision_name) ->condition('entity_id', $entity->id()) ->execute(); } } }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/core!lib!Drupal!Core!Entity!Sql!SqlContentEntityStorage.php/function/SqlContentEntityStorage::deleteFromDedicatedTables/8.1.x