public function ContentEntityStorageBase::deleteRevision in Drupal 9
Same name and namespace in other branches
- 8 core/lib/Drupal/Core/Entity/ContentEntityStorageBase.php \Drupal\Core\Entity\ContentEntityStorageBase::deleteRevision()
Delete a specific entity revision.
A revision can only be deleted if it's not the currently active one.
@todo Deprecated in Drupal 8.5.0 and will be removed before Drupal 9.0.0. Use \Drupal\Core\Entity\RevisionableStorageInterface instead.
Parameters
int $revision_id: The revision id.
Overrides EntityStorageInterface::deleteRevision
See also
https://www.drupal.org/node/2926958
https://www.drupal.org/node/2927226
1 method overrides ContentEntityStorageBase::deleteRevision()
- ContentEntityNullStorage::deleteRevision in core/
lib/ Drupal/ Core/ Entity/ ContentEntityNullStorage.php - Delete a specific entity revision.
File
- core/
lib/ Drupal/ Core/ Entity/ ContentEntityStorageBase.php, line 716
Class
- ContentEntityStorageBase
- Base class for content entity storage handlers.
Namespace
Drupal\Core\EntityCode
public function deleteRevision($revision_id) {
/** @var \Drupal\Core\Entity\ContentEntityInterface $revision */
if ($revision = $this
->loadRevision($revision_id)) {
// Prevent deletion if this is the default revision.
if ($revision
->isDefaultRevision()) {
throw new EntityStorageException('Default revision can not be deleted');
}
$this
->invokeFieldMethod('deleteRevision', $revision);
$this
->doDeleteRevisionFieldItems($revision);
$this
->invokeHook('revision_delete', $revision);
}
}