8.2.x Entity.php protected Entity::invalidateTagsOnSave($update)
8.0.x Entity.php protected Entity::invalidateTagsOnSave($update)
8.1.x Entity.php protected Entity::invalidateTagsOnSave($update)
8.3.x Entity.php protected Entity::invalidateTagsOnSave($update)

Invalidates an entity's cache tags upon save.

Parameters

bool $update: TRUE if the entity has been updated, or FALSE if it has been inserted.

1 call to Entity::invalidateTagsOnSave()
Entity::postSave in core/lib/Drupal/Core/Entity/Entity.php
Acts on a saved entity before the insert or update hook is invoked.
1 method overrides Entity::invalidateTagsOnSave()
ConfigEntityBase::invalidateTagsOnSave in core/lib/Drupal/Core/Config/Entity/ConfigEntityBase.php
Override to never invalidate the entity's cache tag; the config system already invalidates it.

File

core/lib/Drupal/Core/Entity/Entity.php, line 524

Class

Entity
Defines a base entity class.

Namespace

Drupal\Core\Entity

Code

protected function invalidateTagsOnSave($update) {
  // An entity was created or updated: invalidate its list cache tags. (An
  // updated entity may start to appear in a listing because it now meets that
  // listing's filtering requirements. A newly created entity may start to
  // appear in listings because it did not exist before.)
  $tags = $this->getEntityType()->getListCacheTags();
  if ($this->hasLinkTemplate('canonical')) {
    // Creating or updating an entity may change a cached 403 or 404 response.
    $tags = Cache::mergeTags($tags, ['4xx-response']);
  }
  if ($update) {
    // An existing entity was updated, also invalidate its unique cache tag.
    $tags = Cache::mergeTags($tags, $this->getCacheTagsToInvalidate());
  }
  Cache::invalidateTags($tags);
}