function FieldStorageDefinitionListener::onFieldStorageDefinitionCreate

Same name and namespace in other branches
  1. 9 core/lib/Drupal/Core/Field/FieldStorageDefinitionListener.php \Drupal\Core\Field\FieldStorageDefinitionListener::onFieldStorageDefinitionCreate()
  2. 10 core/lib/Drupal/Core/Field/FieldStorageDefinitionListener.php \Drupal\Core\Field\FieldStorageDefinitionListener::onFieldStorageDefinitionCreate()
  3. 11.x core/lib/Drupal/Core/Field/FieldStorageDefinitionListener.php \Drupal\Core\Field\FieldStorageDefinitionListener::onFieldStorageDefinitionCreate()

Overrides FieldStorageDefinitionListenerInterface::onFieldStorageDefinitionCreate

File

core/lib/Drupal/Core/Field/FieldStorageDefinitionListener.php, line 78

Class

FieldStorageDefinitionListener
Reacts to field storage definition CRUD on behalf of the Entity system.

Namespace

Drupal\Core\Field

Code

public function onFieldStorageDefinitionCreate(FieldStorageDefinitionInterface $storage_definition) {
    $entity_type_id = $storage_definition->getTargetEntityTypeId();
    // @todo Forward this to all interested handlers, not only storage, once
    //   iterating handlers is possible: https://www.drupal.org/node/2332857.
    $storage = $this->entityTypeManager
        ->getStorage($entity_type_id);
    if ($storage instanceof FieldStorageDefinitionListenerInterface) {
        $storage->onFieldStorageDefinitionCreate($storage_definition);
    }
    $this->entityLastInstalledSchemaRepository
        ->setLastInstalledFieldStorageDefinition($storage_definition);
    $this->eventDispatcher
        ->dispatch(FieldStorageDefinitionEvents::CREATE, new FieldStorageDefinitionEvent($storage_definition));
    $this->entityFieldManager
        ->clearCachedFieldDefinitions();
}

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