public function EntityLastInstalledSchemaRepository::getLastInstalledFieldStorageDefinitions

public EntityLastInstalledSchemaRepository::getLastInstalledFieldStorageDefinitions($entity_type_id)

Gets the entity type's most recently installed field storage definitions.

During the application lifetime, field storage definitions can change. For example, updated code can be deployed. The getFieldStorageDefinitions() method will always return the definitions as determined by the current codebase. This method, however, returns what the definitions were when the last time that one of the \Drupal\Core\Field\FieldStorageDefinitionListenerInterface events was last fired and completed successfully. In other words, the definitions that the entity type's handlers have incorporated into the application state. For example, if the entity type's storage handler is SQL-based, the definitions for which database tables were created.

Application management code can check if getFieldStorageDefinitions() differs from getLastInstalledFieldStorageDefinitions() and decide whether to:

Parameters

string $entity_type_id: The entity type ID.

Return value

\Drupal\Core\Field\FieldStorageDefinitionInterface[] The array of installed field storage definitions for the entity type, keyed by field name.

Overrides EntityLastInstalledSchemaRepositoryInterface::getLastInstalledFieldStorageDefinitions

See also

\Drupal\Core\Entity\EntityTypeListenerInterface

File

core/lib/Drupal/Core/Entity/EntityLastInstalledSchemaRepository.php, line 61

Class

EntityLastInstalledSchemaRepository
Provides a repository for installed entity definitions.

Namespace

Drupal\Core\Entity

Code

public function getLastInstalledFieldStorageDefinitions($entity_type_id) {
  return $this->keyValueFactory->get('entity.definitions.installed')->get($entity_type_id . '.field_storage_definitions', []);
}

© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/core!lib!Drupal!Core!Entity!EntityLastInstalledSchemaRepository.php/function/EntityLastInstalledSchemaRepository::getLastInstalledFieldStorageDefinitions/8.1.x