diff -u b/core/lib/Drupal/Core/Entity/ContentEntityStorageBase.php b/core/lib/Drupal/Core/Entity/ContentEntityStorageBase.php --- b/core/lib/Drupal/Core/Entity/ContentEntityStorageBase.php +++ b/core/lib/Drupal/Core/Entity/ContentEntityStorageBase.php @@ -16,7 +16,7 @@ /** * Base class for content entity storage handlers. */ -abstract class ContentEntityStorageBase extends EntityStorageBase implements ContentEntityStorageInterface { +abstract class ContentEntityStorageBase extends EntityStorageBase implements ContentEntityStorageInterface, DynamicallyFieldableEntityStorageInterface { /** * The entity bundle key. diff -u b/core/lib/Drupal/Core/Entity/ContentEntityStorageInterface.php b/core/lib/Drupal/Core/Entity/ContentEntityStorageInterface.php --- b/core/lib/Drupal/Core/Entity/ContentEntityStorageInterface.php +++ b/core/lib/Drupal/Core/Entity/ContentEntityStorageInterface.php @@ -10,7 +10,7 @@ /** * A storage that supports content entity types. */ -interface ContentEntityStorageInterface extends DynamicallyFieldableEntityStorageInterface { +interface ContentEntityStorageInterface extends EntityStorageInterface { /** * Constructs a new entity translation object, without permanently saving it. diff -u b/core/lib/Drupal/Core/Entity/KeyValueStore/KeyValueContentEntityStorage.php b/core/lib/Drupal/Core/Entity/KeyValueStore/KeyValueContentEntityStorage.php --- b/core/lib/Drupal/Core/Entity/KeyValueStore/KeyValueContentEntityStorage.php +++ b/core/lib/Drupal/Core/Entity/KeyValueStore/KeyValueContentEntityStorage.php @@ -9,8 +9,6 @@ use Drupal\Core\Entity\ContentEntityInterface; use Drupal\Core\Entity\ContentEntityStorageInterface; -use Drupal\Core\Field\FieldDefinitionInterface; -use Drupal\Core\Field\FieldStorageDefinitionInterface; /** * Provides a key value backend for content entities. @@ -21,55 +19,7 @@ * {@inheritdoc} */ - public function countFieldData($storage_definition, $as_bool = FALSE) {} - - /** - * {@inheritdoc} - */ - public function hasData() {} - - /** - * {@inheritdoc} - */ - public function purgeFieldData(FieldDefinitionInterface $field_definition, $batch_size) {} - - /** - * {@inheritdoc} - */ - public function finalizePurge(FieldStorageDefinitionInterface $storage_definition) {} - - /** - * {@inheritdoc} - */ - public function onFieldDefinitionCreate(FieldDefinitionInterface $field_definition) {} - - /** - * {@inheritdoc} - */ - public function onFieldDefinitionUpdate(FieldDefinitionInterface $field_definition, FieldDefinitionInterface $original) {} - - /** - * {@inheritdoc} - */ - public function onFieldDefinitionDelete(FieldDefinitionInterface $field_definition) {} - - /** - * {@inheritdoc} - */ - public function onFieldStorageDefinitionCreate(FieldStorageDefinitionInterface $storage_definition) {} - - /** - * {@inheritdoc} - */ - public function onFieldStorageDefinitionUpdate(FieldStorageDefinitionInterface $storage_definition, FieldStorageDefinitionInterface $original) {} - - /** - * {@inheritdoc} - */ - public function onFieldStorageDefinitionDelete(FieldStorageDefinitionInterface $storage_definition) {} - - /** - * {@inheritdoc} - */ - public function createTranslation(ContentEntityInterface $entity, $langcode, array $values = []) {} + public function createTranslation(ContentEntityInterface $entity, $langcode, array $values = []) { + // @todo + } } only in patch2: unchanged: --- a/core/modules/aggregator/src/FeedStorageInterface.php +++ b/core/modules/aggregator/src/FeedStorageInterface.php @@ -7,12 +7,12 @@ namespace Drupal\aggregator; -use Drupal\Core\Entity\EntityStorageInterface; +use Drupal\Core\Entity\ContentEntityStorageInterface; /** * Defines an interface for aggregator feed entity storage classes. */ -interface FeedStorageInterface extends EntityStorageInterface { +interface FeedStorageInterface extends ContentEntityStorageInterface { /** * Returns the fids of feeds that need to be refreshed. only in patch2: unchanged: --- a/core/modules/aggregator/src/ItemStorageInterface.php +++ b/core/modules/aggregator/src/ItemStorageInterface.php @@ -7,12 +7,12 @@ namespace Drupal\aggregator; -use Drupal\Core\Entity\EntityStorageInterface; +use Drupal\Core\Entity\ContentEntityStorageInterface; /** * Defines an interface for aggregator item entity storage classes. */ -interface ItemStorageInterface extends EntityStorageInterface { +interface ItemStorageInterface extends ContentEntityStorageInterface { /** * Returns the count of the items in a feed. only in patch2: unchanged: --- a/core/modules/comment/src/CommentStorageInterface.php +++ b/core/modules/comment/src/CommentStorageInterface.php @@ -8,13 +8,13 @@ namespace Drupal\comment; use Drupal\Core\Entity\EntityInterface; -use Drupal\Core\Entity\EntityStorageInterface; +use Drupal\Core\Entity\ContentEntityStorageInterface; use Drupal\Core\Entity\FieldableEntityInterface; /** * Defines an interface for comment entity storage classes. */ -interface CommentStorageInterface extends EntityStorageInterface { +interface CommentStorageInterface extends ContentEntityStorageInterface { /** * Gets the maximum encoded thread value for the top level comments. only in patch2: unchanged: --- a/core/modules/file/src/FileStorageInterface.php +++ b/core/modules/file/src/FileStorageInterface.php @@ -7,12 +7,12 @@ namespace Drupal\file; -use Drupal\Core\Entity\EntityStorageInterface; +use Drupal\Core\Entity\ContentEntityStorageInterface; /** * Defines an interface for file entity storage classes. */ -interface FileStorageInterface extends EntityStorageInterface { +interface FileStorageInterface extends ContentEntityStorageInterface { /** * Determines total disk space used by a single user or the whole filesystem. only in patch2: unchanged: --- a/core/modules/node/src/NodeStorageInterface.php +++ b/core/modules/node/src/NodeStorageInterface.php @@ -7,14 +7,14 @@ namespace Drupal\node; -use Drupal\Core\Entity\EntityStorageInterface; +use Drupal\Core\Entity\ContentEntityStorageInterface; use Drupal\Core\Language\LanguageInterface; use Drupal\Core\Session\AccountInterface; /** * Defines an interface for node entity storage classes. */ -interface NodeStorageInterface extends EntityStorageInterface { +interface NodeStorageInterface extends ContentEntityStorageInterface { /** * Gets a list of node revision IDs for a specific node. only in patch2: unchanged: --- a/core/modules/taxonomy/src/TermStorageInterface.php +++ b/core/modules/taxonomy/src/TermStorageInterface.php @@ -8,12 +8,12 @@ namespace Drupal\taxonomy; use Drupal\Core\Entity\EntityInterface; -use Drupal\Core\Entity\EntityStorageInterface; +use Drupal\Core\Entity\ContentEntityStorageInterface; /** * Defines an interface for taxonomy_term entity storage classes. */ -interface TermStorageInterface extends EntityStorageInterface { +interface TermStorageInterface extends ContentEntityStorageInterface { /** * Removed reference to terms from term_hierarchy. only in patch2: unchanged: --- a/core/modules/user/src/UserStorageInterface.php +++ b/core/modules/user/src/UserStorageInterface.php @@ -7,13 +7,13 @@ namespace Drupal\user; -use Drupal\Core\Entity\EntityStorageInterface; +use Drupal\Core\Entity\ContentEntityStorageInterface; use Drupal\Core\Session\AccountInterface; /** * Defines an interface for user entity storage classes. */ -interface UserStorageInterface extends EntityStorageInterface{ +interface UserStorageInterface extends ContentEntityStorageInterface { /** * Update the last login timestamp of the user.