Same name and namespace in other branches
  1. 8.9.x core/modules/file/src/Plugin/Field/FieldType/FileFieldItemList.php \Drupal\file\Plugin\Field\FieldType\FileFieldItemList::deleteRevision()
  2. 9 core/modules/file/src/Plugin/Field/FieldType/FileFieldItemList.php \Drupal\file\Plugin\Field\FieldType\FileFieldItemList::deleteRevision()

Defines custom revision delete behavior for field values.

This method is called from during the process of deleting an entity revision, just before the field values are deleted from storage. It is only called for entity types that support revisioning.

Overrides FieldItemList::deleteRevision

File

core/modules/file/src/Plugin/Field/FieldType/FileFieldItemList.php, line 95

Class

FileFieldItemList
Represents a configurable entity file field.

Namespace

Drupal\file\Plugin\Field\FieldType

Code

public function deleteRevision() {
  parent::deleteRevision();
  $entity = $this
    ->getEntity();

  // Decrement the file usage by 1.
  foreach ($this
    ->referencedEntities() as $file) {
    \Drupal::service('file.usage')
      ->delete($file, 'file', $entity
      ->getEntityTypeId(), $entity
      ->id());
  }
}