diff --git a/core/lib/Drupal/Core/Entity/EntityDefinitionUpdateManager.php b/core/lib/Drupal/Core/Entity/EntityDefinitionUpdateManager.php index 5efc77b..4f92c8a 100644 --- a/core/lib/Drupal/Core/Entity/EntityDefinitionUpdateManager.php +++ b/core/lib/Drupal/Core/Entity/EntityDefinitionUpdateManager.php @@ -8,7 +8,7 @@ namespace Drupal\Core\Entity; use Drupal\Core\Entity\Schema\EntityStorageSchemaInterface; -use Drupal\Core\Entity\Schema\FieldableEntityStorageSchemaInterface; +use Drupal\Core\Entity\Schema\DynamicallyFieldableEntityStorageSchemaInterface; use Drupal\Core\Field\FieldStorageDefinitionInterface; use Drupal\Core\StringTranslation\StringTranslationTrait; @@ -238,7 +238,7 @@ protected function requiresEntityStorageSchemaChanges(EntityTypeInterface $entit */ protected function requiresFieldStorageSchemaChanges(FieldStorageDefinitionInterface $storage_definition, FieldStorageDefinitionInterface $original) { $storage = $this->entityManager->getStorage($storage_definition->getTargetEntityTypeId()); - return ($storage instanceof FieldableEntityStorageSchemaInterface) && $storage->requiresFieldStorageSchemaChanges($storage_definition, $original); + return ($storage instanceof DynamicallyFieldableEntityStorageSchemaInterface) && $storage->requiresFieldStorageSchemaChanges($storage_definition, $original); } } diff --git a/core/lib/Drupal/Core/Entity/Schema/FieldableEntityStorageSchemaInterface.php b/core/lib/Drupal/Core/Entity/Schema/DynamicallyFieldableEntityStorageSchemaInterface.php similarity index 83% rename from core/lib/Drupal/Core/Entity/Schema/FieldableEntityStorageSchemaInterface.php rename to core/lib/Drupal/Core/Entity/Schema/DynamicallyFieldableEntityStorageSchemaInterface.php index c20d9d1..59272f8 100644 --- a/core/lib/Drupal/Core/Entity/Schema/FieldableEntityStorageSchemaInterface.php +++ b/core/lib/Drupal/Core/Entity/Schema/DynamicallyFieldableEntityStorageSchemaInterface.php @@ -2,7 +2,7 @@ /** * @file - * Contains \Drupal\Core\Entity\Schema\FieldableEntityStorageSchemaInterface. + * Contains \Drupal\Core\Entity\Schema\DynamicallyFieldableEntityStorageSchemaInterface. */ namespace Drupal\Core\Entity\Schema; @@ -11,9 +11,15 @@ use Drupal\Core\Field\FieldStorageDefinitionListenerInterface; /** - * Defines the interface for storage schema classes for fieldable entity types. + * A storage schema that supports entity types with dynamic field definitions. + * + * A storage schema that implements this interface can react to the entity + * type's field definitions changing, due to modules being installed or + * uninstalled, or via field UI, or via code changes to the entity class. + * + * For example, configurable fields defined and exposed by field.module. */ -interface FieldableEntityStorageSchemaInterface extends EntityStorageSchemaInterface, FieldStorageDefinitionListenerInterface { +interface DynamicallyFieldableEntityStorageSchemaInterface extends EntityStorageSchemaInterface, FieldStorageDefinitionListenerInterface { /** * Checks if the changes to the storage definition requires schema changes. diff --git a/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php b/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php index 3136847..a8df532 100644 --- a/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php +++ b/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php @@ -19,7 +19,7 @@ use Drupal\Core\Entity\EntityStorageException; use Drupal\Core\Entity\EntityTypeInterface; use Drupal\Core\Entity\Query\QueryInterface; -use Drupal\Core\Entity\Schema\FieldableEntityStorageSchemaInterface; +use Drupal\Core\Entity\Schema\DynamicallyFieldableEntityStorageSchemaInterface; use Drupal\Core\Field\FieldDefinitionInterface; use Drupal\Core\Field\FieldStorageDefinitionInterface; use Drupal\Core\Language\LanguageInterface; @@ -39,7 +39,7 @@ * * @ingroup entity_api */ -class SqlContentEntityStorage extends ContentEntityStorageBase implements SqlEntityStorageInterface, FieldableEntityStorageSchemaInterface, EntityBundleListenerInterface { +class SqlContentEntityStorage extends ContentEntityStorageBase implements SqlEntityStorageInterface, DynamicallyFieldableEntityStorageSchemaInterface, EntityBundleListenerInterface { /** * The mapping of field columns to SQL tables. diff --git a/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorageSchema.php b/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorageSchema.php index de6910f..dac6584 100644 --- a/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorageSchema.php +++ b/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorageSchema.php @@ -14,7 +14,7 @@ use Drupal\Core\Entity\EntityStorageException; use Drupal\Core\Entity\EntityTypeInterface; use Drupal\Core\Entity\Exception\FieldStorageDefinitionUpdateForbiddenException; -use Drupal\Core\Entity\Schema\FieldableEntityStorageSchemaInterface; +use Drupal\Core\Entity\Schema\DynamicallyFieldableEntityStorageSchemaInterface; use Drupal\Core\Field\FieldException; use Drupal\Core\Field\FieldStorageDefinitionInterface; use Drupal\field\FieldStorageConfigInterface; @@ -27,7 +27,7 @@ * optimizations and getSharedTableFieldSchema() for optimizations applying to * a single field. */ -class SqlContentEntityStorageSchema implements FieldableEntityStorageSchemaInterface { +class SqlContentEntityStorageSchema implements DynamicallyFieldableEntityStorageSchemaInterface { /** * The entity manager.