function EntityBase::preSave

Same name in other branches
  1. 9 core/lib/Drupal/Core/Entity/EntityBase.php \Drupal\Core\Entity\EntityBase::preSave()
  2. 8.9.x core/lib/Drupal/Core/Entity/EntityBase.php \Drupal\Core\Entity\EntityBase::preSave()
  3. 11.x core/lib/Drupal/Core/Entity/EntityBase.php \Drupal\Core\Entity\EntityBase::preSave()

Overrides EntityInterface::preSave

2 calls to EntityBase::preSave()
ConfigEntityBase::preSave in core/lib/Drupal/Core/Config/Entity/ConfigEntityBase.php
Acts on an entity before the presave hook is invoked.
ContentEntityBase::preSave in core/lib/Drupal/Core/Entity/ContentEntityBase.php
Acts on an entity before the presave hook is invoked.
2 methods override EntityBase::preSave()
ConfigEntityBase::preSave in core/lib/Drupal/Core/Config/Entity/ConfigEntityBase.php
Acts on an entity before the presave hook is invoked.
ContentEntityBase::preSave in core/lib/Drupal/Core/Entity/ContentEntityBase.php
Acts on an entity before the presave hook is invoked.

File

core/lib/Drupal/Core/Entity/EntityBase.php, line 393

Class

EntityBase
Defines a base entity class.

Namespace

Drupal\Core\Entity

Code

public function preSave(EntityStorageInterface $storage) {
    // Check if this is an entity bundle.
    if ($this->getEntityType()
        ->getBundleOf()) {
        // Throw an exception if the bundle ID is longer than 32 characters.
        if (mb_strlen($this->id()) > EntityTypeInterface::BUNDLE_MAX_LENGTH) {
            throw new ConfigEntityIdLengthException("Attempt to create a bundle with an ID longer than " . EntityTypeInterface::BUNDLE_MAX_LENGTH . " characters: {$this->id}().");
        }
    }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.