/**
  * {@inheritdoc}
  */
 public function requiresEntityDataMigration(EntityTypeInterface $entity_type, EntityTypeInterface $original)
 {
     // If the original storage has existing entities, or it is impossible to
     // determine if that is the case, require entity data to be migrated.
     $original_storage_class = $original->getStorageClass();
     if (!class_exists($original_storage_class)) {
         return TRUE;
     }
     // Data migration is not needed when only indexes changed, as they can be
     // applied if there is data.
     if (!$this->hasSharedTableStructureChange($entity_type, $original)) {
         return FALSE;
     }
     // Use the original entity type since the storage has not been updated.
     $original_storage = $this->entityManager->createHandlerInstance($original_storage_class, $original);
     return $original_storage->hasData();
 }
 /**
  * {@inheritdoc}
  */
 public function requiresEntityDataMigration(EntityTypeInterface $entity_type, EntityTypeInterface $original)
 {
     // If we're updating from NULL storage, then there's no stored data that
     // requires migration.
     // @todo Remove in https://www.drupal.org/node/2335879.
     $original_storage_class = $original->getStorageClass();
     $null_storage_class = 'Drupal\\Core\\Entity\\ContentEntityNullStorage';
     if ($original_storage_class == $null_storage_class || is_subclass_of($original_storage_class, $null_storage_class)) {
         return FALSE;
     }
     return $entity_type->getStorageClass() != $original_storage_class || !$this->isTableEmpty($this->storage->getBaseTable());
 }