diff --git a/core/includes/entity.inc b/core/includes/entity.inc
index 591f36c..57af765 100644
--- a/core/includes/entity.inc
+++ b/core/includes/entity.inc
@@ -501,7 +501,7 @@ function entity_list_controller($entity_type) {
  *   A render array for the entity.
  */
 function entity_view(EntityInterface $entity, $view_mode, $langcode = NULL, $reset = FALSE) {
-  $render_controller = \Drupal::entityManager()->getViewBuilder($entity->entityType());
+  $render_controller = \Drupal::entityManager()->getViewBuilder($entity->entityTypeId());
   if ($reset) {
     $render_controller->resetCache(array($entity->id()));
   }
@@ -511,7 +511,7 @@ function entity_view(EntityInterface $entity, $view_mode, $langcode = NULL, $res
 /**
  * Returns the render array for the provided entities.
  *
- * @param array $entities
+ * @param \Drupal\Core\Entity\EntityInterface[] $entities
  *   The entities to be rendered, must be of the same type.
  * @param string $view_mode
  *   The view mode that should be used to display the entity.
@@ -527,7 +527,7 @@ function entity_view(EntityInterface $entity, $view_mode, $langcode = NULL, $res
  *   entities array passed in $entities.
  */
 function entity_view_multiple(array $entities, $view_mode, $langcode = NULL, $reset = FALSE) {
-  $render_controller = \Drupal::entityManager()->getViewBuilder(reset($entities)->entityType());
+  $render_controller = \Drupal::entityManager()->getViewBuilder(reset($entities)->entityTypeId());
   if ($reset) {
     $render_controller->resetCache(array_keys($entities));
   }
@@ -619,7 +619,7 @@ function entity_get_display($entity_type, $bundle, $view_mode) {
  * @see entity_get_display().
  */
 function entity_get_render_display(EntityInterface $entity, $view_mode) {
-  $entity_type = $entity->entityType();
+  $entity_type = $entity->entityTypeId();
   $bundle = $entity->bundle();
   $render_view_mode = 'default';
 
@@ -727,7 +727,7 @@ function entity_get_form_display($entity_type, $bundle, $form_mode) {
  * @see entity_get_form_display().
  */
 function entity_get_render_form_display(EntityInterface $entity, $form_mode) {
-  $entity_type = $entity->entityType();
+  $entity_type = $entity->entityTypeId();
   $bundle = $entity->bundle();
   $render_form_mode = 'default';
 
diff --git a/core/lib/Drupal/Core/Entity/ContentEntityBase.php b/core/lib/Drupal/Core/Entity/ContentEntityBase.php
index 9d502d2..361a1ba 100644
--- a/core/lib/Drupal/Core/Entity/ContentEntityBase.php
+++ b/core/lib/Drupal/Core/Entity/ContentEntityBase.php
@@ -179,7 +179,7 @@ public function setNewRevision($value = TRUE) {
    * {@inheritdoc}
    */
   public function isNewRevision() {
-    return $this->newRevision || ($this->entityInfo()->hasKey('revision') && !$this->getRevisionId());
+    return $this->newRevision || ($this->entityType()->hasKey('revision') && !$this->getRevisionId());
   }
 
   /**
@@ -221,11 +221,11 @@ public function preSaveRevision(EntityStorageControllerInterface $storage_contro
   public function getDefinition() {
     // @todo: This does not make much sense, so remove once TypedDataInterface
     // is removed. See https://drupal.org/node/2002138.
-    if ($this->bundle() != $this->entityType()) {
-      $type = 'entity:' . $this->entityType() . ':' . $this->bundle();
+    if ($this->bundle() != $this->entityTypeId()) {
+      $type = 'entity:' . $this->entityTypeId() . ':' . $this->bundle();
     }
     else {
-      $type = 'entity:' . $this->entityType();
+      $type = 'entity:' . $this->entityTypeId();
     }
     return DataDefinition::create($type);
   }
@@ -723,10 +723,10 @@ public function addTranslation($langcode, array $values = array()) {
 
     // Instantiate a new empty entity so default values will be populated in the
     // specified language.
-    $info = $this->entityInfo();
+    $info = $this->entityType();
     $default_values = array($info->getKey('bundle') => $this->bundle, 'langcode' => $langcode);
     $entity = \Drupal::entityManager()
-      ->getStorageController($this->entityType())
+      ->getStorageController($this->entityTypeId())
       ->create($default_values);
 
     foreach ($entity as $name => $field) {
@@ -909,7 +909,7 @@ public function createDuplicate() {
     }
 
     $duplicate = clone $this;
-    $entity_info = $this->entityInfo();
+    $entity_info = $this->entityType();
     $duplicate->{$entity_info->getKey('id')}->value = NULL;
 
     // Check if the entity type supports UUIDs and generate a new one if so.
@@ -962,7 +962,7 @@ public function __clone() {
    */
   public function label() {
     $label = NULL;
-    $entity_info = $this->entityInfo();
+    $entity_info = $this->entityType();
     // @todo Convert to is_callable() and call_user_func().
     if (($label_callback = $entity_info->getLabelCallback()) && function_exists($label_callback)) {
       $label = $label_callback($this);
diff --git a/core/lib/Drupal/Core/Entity/ContentEntityConfirmFormBase.php b/core/lib/Drupal/Core/Entity/ContentEntityConfirmFormBase.php
index c43cd9c..08bb78b 100644
--- a/core/lib/Drupal/Core/Entity/ContentEntityConfirmFormBase.php
+++ b/core/lib/Drupal/Core/Entity/ContentEntityConfirmFormBase.php
@@ -19,7 +19,7 @@
    * {@inheritdoc}
    */
   public function getBaseFormID() {
-    return $this->entity->entityType() . '_confirm_form';
+    return $this->entity->entityTypeId() . '_confirm_form';
   }
 
   /**
diff --git a/core/lib/Drupal/Core/Entity/ContentEntityFormController.php b/core/lib/Drupal/Core/Entity/ContentEntityFormController.php
index de83f56..227a60f 100644
--- a/core/lib/Drupal/Core/Entity/ContentEntityFormController.php
+++ b/core/lib/Drupal/Core/Entity/ContentEntityFormController.php
@@ -50,7 +50,7 @@ public function form(array $form, array &$form_state) {
     $entity = $this->entity;
     // @todo Exploit the Field API to generate the default widgets for the
     // entity fields.
-    if ($entity->entityInfo()->isFieldable()) {
+    if ($entity->entityType()->isFieldable()) {
       field_attach_form($entity, $form, $form_state, $this->getFormLangcode($form_state));
     }
 
@@ -66,7 +66,7 @@ public function form(array $form, array &$form_state) {
   public function validate(array $form, array &$form_state) {
     $this->updateFormLangcode($form_state);
     $entity = $this->buildEntity($form, $form_state);
-    $entity_type = $entity->entityType();
+    $entity_type = $entity->entityTypeId();
     $entity_langcode = $entity->language()->id;
 
     $violations = array();
@@ -130,7 +130,7 @@ public function isDefaultFormLangcode(array $form_state) {
    */
   public function buildEntity(array $form, array &$form_state) {
     $entity = clone $this->entity;
-    $entity_type = $entity->entityType();
+    $entity_type = $entity->entityTypeId();
     $info = \Drupal::entityManager()->getDefinition($entity_type);
 
     // @todo Exploit the Entity Field API to process the submitted field values.
diff --git a/core/lib/Drupal/Core/Entity/Controller/EntityViewController.php b/core/lib/Drupal/Core/Entity/Controller/EntityViewController.php
index d11e4a6..739b0d9 100644
--- a/core/lib/Drupal/Core/Entity/Controller/EntityViewController.php
+++ b/core/lib/Drupal/Core/Entity/Controller/EntityViewController.php
@@ -62,7 +62,7 @@ public static function create(ContainerInterface $container) {
    */
   public function view(EntityInterface $_entity, $view_mode = 'full', $langcode = NULL) {
     return $this->entityManager
-      ->getViewBuilder($_entity->entityType())
+      ->getViewBuilder($_entity->entityTypeId())
       ->view($_entity, $view_mode, $langcode);
   }
 
diff --git a/core/lib/Drupal/Core/Entity/Display/EntityDisplayInterface.php b/core/lib/Drupal/Core/Entity/Display/EntityDisplayInterface.php
index b5837c7..1772e79 100644
--- a/core/lib/Drupal/Core/Entity/Display/EntityDisplayInterface.php
+++ b/core/lib/Drupal/Core/Entity/Display/EntityDisplayInterface.php
@@ -7,10 +7,12 @@
 
 namespace Drupal\Core\Entity\Display;
 
+use Drupal\Core\Entity\EntityInterface;
+
 /**
  * Provides a common interface for entity displays.
  */
-interface EntityDisplayInterface {
+interface EntityDisplayInterface extends EntityInterface {
 
   /**
    * Creates a duplicate of the EntityDisplay object on a different view mode.
diff --git a/core/lib/Drupal/Core/Entity/Entity.php b/core/lib/Drupal/Core/Entity/Entity.php
index 2e4a7ea..97c1b02 100644
--- a/core/lib/Drupal/Core/Entity/Entity.php
+++ b/core/lib/Drupal/Core/Entity/Entity.php
@@ -92,7 +92,7 @@ public function enforceIsNew($value = TRUE) {
   /**
    * {@inheritdoc}
    */
-  public function entityType() {
+  public function entityTypeId() {
     return $this->entityType;
   }
 
@@ -108,7 +108,7 @@ public function bundle() {
    */
   public function label() {
     $label = NULL;
-    $entity_info = $this->entityInfo();
+    $entity_info = $this->entityType();
     // @todo Convert to is_callable() and call_user_func().
     if (($label_callback = $entity_info->getLabelCallback()) && function_exists($label_callback)) {
       $label = $label_callback($this);
@@ -148,7 +148,7 @@ public function label() {
    *   of the entity, and matching the signature of url().
    */
   public function uri($rel = 'canonical') {
-    $entity_info = $this->entityInfo();
+    $entity_info = $this->entityType();
 
     // The links array might contain URI templates set in annotations.
     $link_templates = $entity_info->getLinkTemplates();
@@ -226,11 +226,11 @@ public function uri($rel = 'canonical') {
   protected function uriPlaceholderReplacements() {
     if (empty($this->uriPlaceholderReplacements)) {
       $this->uriPlaceholderReplacements = array(
-        '{entityType}' => $this->entityType(),
+        '{entityType}' => $this->entityTypeId(),
         '{bundle}' => $this->bundle(),
         '{id}' => $this->id(),
         '{uuid}' => $this->uuid(),
-        '{' . $this->entityType() . '}' => $this->id(),
+        '{' . $this->entityTypeId() . '}' => $this->id(),
       );
     }
     return $this->uriPlaceholderReplacements;
@@ -245,7 +245,7 @@ protected function uriPlaceholderReplacements() {
    *   An array of link relationships supported by this entity.
    */
   public function uriRelationships() {
-    return array_keys($this->entityInfo()->getLinkTemplates());
+    return array_keys($this->entityType()->getLinkTemplates());
   }
 
 
@@ -296,7 +296,7 @@ public function delete() {
    */
   public function createDuplicate() {
     $duplicate = clone $this;
-    $entity_info = $this->entityInfo();
+    $entity_info = $this->entityType();
     $duplicate->{$entity_info->getKey('id')} = NULL;
 
     // Check if the entity type supports UUIDs and generate a new one if so.
@@ -310,8 +310,8 @@ public function createDuplicate() {
   /**
    * {@inheritdoc}
    */
-  public function entityInfo() {
-    return \Drupal::entityManager()->getDefinition($this->entityType());
+  public function entityType() {
+    return \Drupal::entityManager()->getDefinition($this->entityTypeId());
   }
 
   /**
@@ -372,11 +372,11 @@ public function referencedEntities() {
    */
   public function changed() {
     $referenced_entities = array(
-      $this->entityType() => array($this->id() => $this),
+      $this->entityTypeId() => array($this->id() => $this),
     );
 
     foreach ($this->referencedEntities() as $referenced_entity) {
-      $referenced_entities[$referenced_entity->entityType()][$referenced_entity->id()] = $referenced_entity;
+      $referenced_entities[$referenced_entity->entityTypeId()][$referenced_entity->id()] = $referenced_entity;
     }
 
     foreach ($referenced_entities as $entity_type => $entities) {
diff --git a/core/lib/Drupal/Core/Entity/EntityAccessController.php b/core/lib/Drupal/Core/Entity/EntityAccessController.php
index f18cd2c..7619494 100644
--- a/core/lib/Drupal/Core/Entity/EntityAccessController.php
+++ b/core/lib/Drupal/Core/Entity/EntityAccessController.php
@@ -80,7 +80,7 @@ public function access(EntityInterface $entity, $operation, $langcode = Language
     // - At least one module says to grant access.
     $access = array_merge(
       $this->moduleHandler->invokeAll('entity_access', array($entity, $operation, $account, $langcode)),
-      $this->moduleHandler->invokeAll($entity->entityType() . '_access', array($entity, $operation, $account, $langcode))
+      $this->moduleHandler->invokeAll($entity->entityTypeId() . '_access', array($entity, $operation, $account, $langcode))
     );
 
     if (($return = $this->processAccessHookResults($access)) === NULL) {
diff --git a/core/lib/Drupal/Core/Entity/EntityConfirmFormBase.php b/core/lib/Drupal/Core/Entity/EntityConfirmFormBase.php
index 83091a3..2ed05fd 100644
--- a/core/lib/Drupal/Core/Entity/EntityConfirmFormBase.php
+++ b/core/lib/Drupal/Core/Entity/EntityConfirmFormBase.php
@@ -20,7 +20,7 @@
    * {@inheritdoc}
    */
   public function getBaseFormID() {
-    return $this->entity->entityType() . '_confirm_form';
+    return $this->entity->entityTypeId() . '_confirm_form';
   }
 
   /**
diff --git a/core/lib/Drupal/Core/Entity/EntityFormController.php b/core/lib/Drupal/Core/Entity/EntityFormController.php
index 2ea0fbe..0d6821c 100644
--- a/core/lib/Drupal/Core/Entity/EntityFormController.php
+++ b/core/lib/Drupal/Core/Entity/EntityFormController.php
@@ -59,7 +59,7 @@ public function getBaseFormID() {
     // hook_form_alter(), #validate, #submit, and #theme callbacks, but only if
     // it is different from the actual form ID, since callbacks would be invoked
     // twice otherwise.
-    $base_form_id = $this->entity->entityType() . '_form';
+    $base_form_id = $this->entity->entityTypeId() . '_form';
     if ($base_form_id == $this->getFormId()) {
       $base_form_id = NULL;
     }
@@ -70,7 +70,7 @@ public function getBaseFormID() {
    * {@inheritdoc}
    */
   public function getFormId() {
-    $entity_type = $this->entity->entityType();
+    $entity_type = $this->entity->entityTypeId();
     $bundle = $this->entity->bundle();
     $form_id = $entity_type;
     if ($bundle != $entity_type) {
@@ -126,7 +126,7 @@ protected function init(array &$form_state) {
 
     // Invoke the prepare form hooks.
     $this->prepareInvokeAll('entity_prepare_form', $form_state);
-    $this->prepareInvokeAll($this->entity->entityType() . '_prepare_form', $form_state);
+    $this->prepareInvokeAll($this->entity->entityTypeId() . '_prepare_form', $form_state);
   }
 
   /**
@@ -138,7 +138,7 @@ public function form(array $form, array &$form_state) {
     $entity = $this->entity;
     // @todo Exploit the Field API to generate the default widgets for the
     // entity properties.
-    if ($entity->entityInfo()->isFieldable()) {
+    if ($entity->entityType()->isFieldable()) {
       field_attach_form($entity, $form, $form_state, $this->getFormLangcode($form_state));
     }
 
@@ -175,7 +175,7 @@ public function processForm($element, $form_state, $form) {
     }
 
     // Hide or assign weights for extra fields.
-    $extra_fields = field_info_extra_fields($this->entity->entityType(), $this->entity->bundle(), 'form');
+    $extra_fields = field_info_extra_fields($this->entity->entityTypeId(), $this->entity->bundle(), 'form');
     foreach ($extra_fields as $extra_field => $info) {
       $component = $this->getFormDisplay($form_state)->getComponent($extra_field);
       if (!$component) {
@@ -364,7 +364,7 @@ public function buildEntity(array $form, array &$form_state) {
     // properties.
     if (isset($form['#entity_builders'])) {
       foreach ($form['#entity_builders'] as $function) {
-        call_user_func_array($function, array($entity->entityType(), $entity, &$form, &$form_state));
+        call_user_func_array($function, array($entity->entityTypeId(), $entity, &$form, &$form_state));
       }
     }
 
diff --git a/core/lib/Drupal/Core/Entity/EntityInterface.php b/core/lib/Drupal/Core/Entity/EntityInterface.php
index b9f1d5e..d7d6816 100644
--- a/core/lib/Drupal/Core/Entity/EntityInterface.php
+++ b/core/lib/Drupal/Core/Entity/EntityInterface.php
@@ -72,10 +72,10 @@ public function enforceIsNew($value = TRUE);
   /**
    * Returns the type of the entity.
    *
-   * @return
+   * @return string
    *   The type of the entity.
    */
-  public function entityType();
+  public function entityTypeId();
 
   /**
    * Returns the bundle of the entity.
@@ -225,7 +225,7 @@ public function createDuplicate();
    *
    * @return \Drupal\Core\Entity\EntityTypeInterface
    */
-  public function entityInfo();
+  public function entityType();
 
   /**
    * Returns a list of entities referenced by this entity.
diff --git a/core/lib/Drupal/Core/Entity/EntityManager.php b/core/lib/Drupal/Core/Entity/EntityManager.php
index e590d64..6a4bba2 100644
--- a/core/lib/Drupal/Core/Entity/EntityManager.php
+++ b/core/lib/Drupal/Core/Entity/EntityManager.php
@@ -289,7 +289,7 @@ protected function getController($entity_type, $controller_type) {
    */
   public function getForm(EntityInterface $entity, $operation = 'default', array $form_state = array()) {
     $form_state['build_info'] = isset($form_state['build_info']) ? $form_state['build_info'] : array();
-    $controller = $this->getFormController($entity->entityType(), $operation);
+    $controller = $this->getFormController($entity->entityTypeId(), $operation);
     $controller->setEntity($entity);
     $form_state['build_info'] += array(
       'callback_object' => $controller,
diff --git a/core/lib/Drupal/Core/Entity/EntityStorageControllerBase.php b/core/lib/Drupal/Core/Entity/EntityStorageControllerBase.php
index 8774ac2..c81cda0 100644
--- a/core/lib/Drupal/Core/Entity/EntityStorageControllerBase.php
+++ b/core/lib/Drupal/Core/Entity/EntityStorageControllerBase.php
@@ -75,14 +75,14 @@ public function __construct(EntityTypeInterface $entity_info) {
   /**
    * {@inheritdoc}
    */
-  public function entityType() {
+  public function entityTypeId() {
     return $this->entityType;
   }
 
   /**
    * {@inheritdoc}
    */
-  public function entityInfo() {
+  public function entityType() {
     return $this->entityInfo;
   }
 
diff --git a/core/lib/Drupal/Core/Entity/EntityStorageControllerInterface.php b/core/lib/Drupal/Core/Entity/EntityStorageControllerInterface.php
index 723e34a..a14ac40 100644
--- a/core/lib/Drupal/Core/Entity/EntityStorageControllerInterface.php
+++ b/core/lib/Drupal/Core/Entity/EntityStorageControllerInterface.php
@@ -160,7 +160,7 @@ public function getQueryServicename();
    * @return string
    *   The entity type.
    */
-  public function entityType();
+  public function entityTypeId();
 
   /**
    * Returns the entity info.
@@ -168,6 +168,6 @@ public function entityType();
    * @return string
    *   The entity info.
    */
-  public function entityInfo();
+  public function entityType();
 
 }
diff --git a/core/lib/Drupal/Core/Entity/FieldableDatabaseStorageController.php b/core/lib/Drupal/Core/Entity/FieldableDatabaseStorageController.php
index cb8b4cb..70ed45c 100644
--- a/core/lib/Drupal/Core/Entity/FieldableDatabaseStorageController.php
+++ b/core/lib/Drupal/Core/Entity/FieldableDatabaseStorageController.php
@@ -906,7 +906,7 @@ protected function doSaveFieldItems(EntityInterface $entity, $update) {
     $vid = $entity->getRevisionId();
     $id = $entity->id();
     $bundle = $entity->bundle();
-    $entity_type = $entity->entityType();
+    $entity_type = $entity->entityTypeId();
     $default_langcode = $entity->getUntranslated()->language()->id;
     $translation_langcodes = array_keys($entity->getTranslationLanguages());
 
@@ -988,7 +988,7 @@ protected function doSaveFieldItems(EntityInterface $entity, $update) {
    * {@inheritdoc}
    */
   protected function doDeleteFieldItems(EntityInterface $entity) {
-    foreach ($this->fieldInfo->getBundleInstances($entity->entityType(), $entity->bundle()) as $instance) {
+    foreach ($this->fieldInfo->getBundleInstances($entity->entityTypeId(), $entity->bundle()) as $instance) {
       $field = $instance->getField();
       $table_name = static::_fieldTableName($field);
       $revision_name = static::_fieldRevisionTableName($field);
@@ -1007,7 +1007,7 @@ protected function doDeleteFieldItems(EntityInterface $entity) {
   protected function doDeleteFieldItemsRevision(EntityInterface $entity) {
     $vid = $entity->getRevisionId();
     if (isset($vid)) {
-      foreach ($this->fieldInfo->getBundleInstances($entity->entityType(), $entity->bundle()) as $instance) {
+      foreach ($this->fieldInfo->getBundleInstances($entity->entityTypeId(), $entity->bundle()) as $instance) {
         $revision_name = static::_fieldRevisionTableName($instance->getField());
         $this->database->delete($revision_name)
           ->condition('entity_id', $entity->id())
diff --git a/core/lib/Drupal/Core/Entity/FieldableEntityStorageControllerBase.php b/core/lib/Drupal/Core/Entity/FieldableEntityStorageControllerBase.php
index 9aa3a63..8cb9a90 100644
--- a/core/lib/Drupal/Core/Entity/FieldableEntityStorageControllerBase.php
+++ b/core/lib/Drupal/Core/Entity/FieldableEntityStorageControllerBase.php
@@ -128,9 +128,9 @@ protected function saveFieldItems(EntityInterface $entity, $update = TRUE) {
     $this->doSaveFieldItems($entity, $update);
 
     if ($update) {
-      $entity_info = $entity->entityInfo();
+      $entity_info = $entity->entityType();
       if ($entity_info->isFieldDataCacheable()) {
-        cache('field')->delete('field:' . $entity->entityType() . ':' . $entity->id());
+        cache('field')->delete('field:' . $entity->entityTypeId() . ':' . $entity->id());
       }
     }
   }
@@ -148,9 +148,9 @@ protected function saveFieldItems(EntityInterface $entity, $update = TRUE) {
   protected function deleteFieldItems(EntityInterface $entity) {
     $this->doDeleteFieldItems($entity);
 
-    $entity_info = $entity->entityInfo();
+    $entity_info = $entity->entityType();
     if ($entity_info->isFieldDataCacheable()) {
-      cache('field')->delete('field:' . $entity->entityType() . ':' . $entity->id());
+      cache('field')->delete('field:' . $entity->entityTypeId() . ':' . $entity->id());
     }
   }
 
diff --git a/core/lib/Drupal/Core/Entity/Plugin/Validation/Constraint/EntityChangedConstraintValidator.php b/core/lib/Drupal/Core/Entity/Plugin/Validation/Constraint/EntityChangedConstraintValidator.php
index 5101d80..3a6119f 100644
--- a/core/lib/Drupal/Core/Entity/Plugin/Validation/Constraint/EntityChangedConstraintValidator.php
+++ b/core/lib/Drupal/Core/Entity/Plugin/Validation/Constraint/EntityChangedConstraintValidator.php
@@ -21,9 +21,10 @@ class EntityChangedConstraintValidator extends ConstraintValidator {
    */
   public function validate($value, Constraint $constraint) {
     if (isset($value)) {
+      /** @var $entity \Drupal\Core\Entity\EntityInterface */
       $entity = $this->context->getMetadata()->getTypedData()->getEntity();
       if (!$entity->isNew()) {
-        $saved_entity = \Drupal::entityManager()->getStorageController($entity->entityType())->loadUnchanged($entity->id());
+        $saved_entity = \Drupal::entityManager()->getStorageController($entity->entityTypeId())->loadUnchanged($entity->id());
 
         if ($saved_entity && ($saved_entity instanceof EntityChangedInterface) && ($saved_entity->getChangedTime() > $value)) {
           $this->context->addViolation($constraint->message);
diff --git a/core/lib/Drupal/Core/Entity/Plugin/Validation/Constraint/EntityTypeConstraintValidator.php b/core/lib/Drupal/Core/Entity/Plugin/Validation/Constraint/EntityTypeConstraintValidator.php
index c26c6c5..3587c3e 100644
--- a/core/lib/Drupal/Core/Entity/Plugin/Validation/Constraint/EntityTypeConstraintValidator.php
+++ b/core/lib/Drupal/Core/Entity/Plugin/Validation/Constraint/EntityTypeConstraintValidator.php
@@ -21,7 +21,8 @@ class EntityTypeConstraintValidator extends ConstraintValidator {
    */
   public function validate($entity, Constraint $constraint) {
 
-    if (!empty($entity) && $entity->entityType() != $constraint->type) {
+    /** @var $entity \Drupal\Core\Entity\EntityInterface */
+    if (!empty($entity) && $entity->entityTypeId() != $constraint->type) {
       $this->context->addViolation($constraint->message, array('%type' => $constraint->type));
     }
   }
diff --git a/core/lib/Drupal/Core/Field/ConfigFieldItemList.php b/core/lib/Drupal/Core/Field/ConfigFieldItemList.php
index ec9c4ea..66453a5 100644
--- a/core/lib/Drupal/Core/Field/ConfigFieldItemList.php
+++ b/core/lib/Drupal/Core/Field/ConfigFieldItemList.php
@@ -44,7 +44,7 @@ public function getFieldDefinition() {
     // see https://drupal.org/node/2114707.
     if (!isset($this->instance)) {
       $entity = $this->getEntity();
-      $instances = Field::fieldInfo()->getBundleInstances($entity->entityType(), $entity->bundle());
+      $instances = Field::fieldInfo()->getBundleInstances($entity->entityTypeId(), $entity->bundle());
       if (isset($instances[$this->getName()])) {
         $this->instance = $instances[$this->getName()];
       }
@@ -141,7 +141,7 @@ protected function defaultValueWidget(array &$form_state) {
 
       // Use the widget currently configured for the 'default' form mode, or
       // fallback to the default widget for the field type.
-      $entity_form_display = entity_get_form_display($entity->entityType(), $entity->bundle(), 'default');
+      $entity_form_display = entity_get_form_display($entity->entityTypeId(), $entity->bundle(), 'default');
       $widget = $entity_form_display->getRenderer($this->getFieldDefinition()->getName());
       if (!$widget) {
         $widget = \Drupal::service('plugin.manager.field.widget')->getInstance(array('field_definition' => $this->getFieldDefinition()));
diff --git a/core/lib/Drupal/Core/Field/FieldItemList.php b/core/lib/Drupal/Core/Field/FieldItemList.php
index 1af3254..ed71468 100644
--- a/core/lib/Drupal/Core/Field/FieldItemList.php
+++ b/core/lib/Drupal/Core/Field/FieldItemList.php
@@ -193,7 +193,7 @@ public function __unset($property_name) {
    * {@inheritdoc}
    */
   public function access($operation = 'view', AccountInterface $account = NULL) {
-    $access_controller = \Drupal::entityManager()->getAccessController($this->getParent()->entityType());
+    $access_controller = \Drupal::entityManager()->getAccessController($this->getParent()->entityTypeId());
     return $access_controller->fieldAccess($operation, $this->getFieldDefinition(), $account, $this);
   }
 
diff --git a/core/lib/Drupal/Core/Field/FormatterBase.php b/core/lib/Drupal/Core/Field/FormatterBase.php
index 1a121e7..9a06ef9 100644
--- a/core/lib/Drupal/Core/Field/FormatterBase.php
+++ b/core/lib/Drupal/Core/Field/FormatterBase.php
@@ -74,7 +74,7 @@ public function view(FieldItemListInterface $items) {
     $elements = $this->viewElements($items);
     if ($elements) {
       $entity = $items->getEntity();
-      $entity_type = $entity->entityType();
+      $entity_type = $entity->entityTypeId();
       $field_name = $this->fieldDefinition->getName();
       $info = array(
         '#theme' => 'field',
@@ -101,8 +101,8 @@ public function view(FieldItemListInterface $items) {
         }
 
         if (isset($item->entity)) {
-          $info['#cache']['tags'][$item->entity->entityType()][] = $item->entity->id();
-          $info['#cache']['tags'][$item->entity->entityType() . '_view'] = TRUE;
+          $info['#cache']['tags'][$item->entity->entityTypeId()][] = $item->entity->id();
+          $info['#cache']['tags'][$item->entity->entityTypeId() . '_view'] = TRUE;
         }
       }
 
diff --git a/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/LegacyConfigFieldItem.php b/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/LegacyConfigFieldItem.php
index b0f74fb..379b61c 100644
--- a/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/LegacyConfigFieldItem.php
+++ b/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/LegacyConfigFieldItem.php
@@ -95,7 +95,7 @@ public function getCacheData() {
       // reference.
       $items = array($entity_id => array(0 => $this->getValue(TRUE)));
       $args = array(
-        $entity->entityType(),
+        $entity->entityTypeId(),
         array($entity_id => $entity),
         $this->getFieldInstance()->getField(),
         array($entity_id => $this->getFieldInstance()),
diff --git a/core/lib/Drupal/Core/Field/WidgetBase.php b/core/lib/Drupal/Core/Field/WidgetBase.php
index 075e142..fa7973a 100644
--- a/core/lib/Drupal/Core/Field/WidgetBase.php
+++ b/core/lib/Drupal/Core/Field/WidgetBase.php
@@ -237,7 +237,7 @@ protected function formSingleElement(FieldItemListInterface $items, $delta, arra
     $entity = $items->getEntity();
 
     $element += array(
-      '#entity_type' => $entity->entityType(),
+      '#entity_type' => $entity->entityTypeId(),
       '#bundle' => $entity->bundle(),
       '#entity' => $entity,
       '#field_name' => $this->fieldDefinition->getName(),
diff --git a/core/modules/comment/comment.module b/core/modules/comment/comment.module
index 0fce7ec..6f707cb 100644
--- a/core/modules/comment/comment.module
+++ b/core/modules/comment/comment.module
@@ -273,8 +273,8 @@ function comment_field_instance_delete(FieldInstanceInterface $instance) {
   if ($instance->getType() == 'comment') {
     // Delete all comments that used by the entity bundle.
     $comments = db_query("SELECT cid FROM {comment} WHERE entity_type = :entity_type AND field_id = :field_id", array(
-      ':entity_type' => $instance->entityType(),
-      ':field_id' => $instance->entityType() . '__' . $instance->getName(),
+      ':entity_type' => $instance->entityTypeId(),
+      ':field_id' => $instance->entityTypeId() . '__' . $instance->getName(),
     ))->fetchCol();
     entity_delete_multiple('comment', $comments);
     \Drupal::cache()->delete('comment_entity_info');
@@ -357,7 +357,7 @@ function comment_get_recent($number = 10) {
  *   An array "page=X" if the page number is greater than zero; NULL otherwise.
  */
 function comment_new_page_count($num_comments, $new_replies, EntityInterface $entity, $field_name = 'comment') {
-  $instance = \Drupal::service('field.info')->getInstance($entity->entityType(), $entity->bundle(), $field_name);
+  $instance = \Drupal::service('field.info')->getInstance($entity->entityTypeId(), $entity->bundle(), $field_name);
   $mode = $instance->getSetting('default_mode');
   $comments_per_page = $instance->getSetting('per_page');
   $pagenum = NULL;
@@ -379,8 +379,8 @@ function comment_new_page_count($num_comments, $new_replies, EntityInterface $en
     $unread_threads_query = db_select('comment')
       ->fields('comment', array('thread'))
       ->condition('entity_id', $entity->id())
-      ->condition('entity_type', $entity->entityType())
-      ->condition('field_id', $entity->entityType() . '__' . $field_name)
+      ->condition('entity_type', $entity->entityTypeId())
+      ->condition('field_id', $entity->entityTypeId() . '__' . $field_name)
       ->condition('status', CommentInterface::PUBLISHED)
       ->orderBy('created', 'DESC')
       ->orderBy('cid', 'DESC')
@@ -404,8 +404,8 @@ function comment_new_page_count($num_comments, $new_replies, EntityInterface $en
                       AND status = :status AND SUBSTRING(thread, 1, (LENGTH(thread) - 1)) < :thread', array(
       ':status' => CommentInterface::PUBLISHED,
       ':entity_id' => $entity->id(),
-      ':field_id' => $entity->entityType() . '__' . $field_name,
-      ':entity_type' => $entity->entityType(),
+      ':field_id' => $entity->entityTypeId() . '__' . $field_name,
+      ':entity_type' => $entity->entityTypeId(),
       ':thread' => $first_thread,
     ))->fetchField();
 
@@ -440,7 +440,7 @@ function comment_entity_view_alter(&$build, EntityInterface $entity, EntityViewD
  * Implements hook_entity_view().
  */
 function comment_entity_view(EntityInterface $entity, EntityViewDisplayInterface $display, $view_mode, $langcode) {
-  if ($entity->entityType() != 'node') {
+  if ($entity->entityTypeId() != 'node') {
     // Comment links are only added to node entity type for backwards
     // compatibility. Should you require comment links for other entity types
     // you can do-so by implementing a new field formatter.
@@ -510,7 +510,7 @@ function comment_entity_view(EntityInterface $entity, EntityViewDisplayInterface
               'fragment' => 'comment-form',
             );
             if ($comment_form_location == COMMENT_FORM_SEPARATE_PAGE) {
-              $links['comment-add']['href'] = 'comment/reply/'. $entity->entityType() . '/' . $entity->id() .'/' . $field_name;
+              $links['comment-add']['href'] = 'comment/reply/'. $entity->entityTypeId() . '/' . $entity->id() .'/' . $field_name;
             }
           }
           else {
@@ -544,7 +544,7 @@ function comment_entity_view(EntityInterface $entity, EntityViewDisplayInterface
                 'fragment' => 'comment-form',
               );
               if ($comment_form_location == COMMENT_FORM_SEPARATE_PAGE) {
-                $links['comment-add']['href'] = 'comment/reply/'. $entity->entityType() . '/' . $entity->id() .'/' . $field_name;
+                $links['comment-add']['href'] = 'comment/reply/'. $entity->entityTypeId() . '/' . $entity->id() .'/' . $field_name;
               }
             }
           }
@@ -599,9 +599,9 @@ function comment_node_view_alter(&$build, EntityInterface $node, EntityViewDispl
  */
 function comment_add(EntityInterface $entity, $field_name = 'comment', $pid = NULL) {
   $values = array(
-    'entity_type' => $entity->entityType(),
+    'entity_type' => $entity->entityTypeId(),
     'entity_id' => $entity->id(),
-    'field_id' => $entity->entityType() . '__' . $field_name,
+    'field_id' => $entity->entityTypeId() . '__' . $field_name,
     'pid' => $pid,
   );
   $comment = entity_create('comment', $values);
@@ -689,8 +689,8 @@ function comment_get_thread(EntityInterface $entity, $field_name, $mode, $commen
   $query->addField('c', 'cid');
   $query
     ->condition('c.entity_id', $entity->id())
-    ->condition('c.entity_type', $entity->entityType())
-    ->condition('c.field_id', $entity->entityType() . '__' . $field_name)
+    ->condition('c.entity_type', $entity->entityTypeId())
+    ->condition('c.field_id', $entity->entityTypeId() . '__' . $field_name)
     ->addTag('entity_access')
     ->addTag('comment_filter')
     ->addMetaData('base_table', 'comment')
@@ -702,8 +702,8 @@ function comment_get_thread(EntityInterface $entity, $field_name, $mode, $commen
   $count_query->addExpression('COUNT(*)');
   $count_query
     ->condition('c.entity_id', $entity->id())
-    ->condition('c.entity_type', $entity->entityType())
-    ->condition('c.field_id', $entity->entityType() . '__' . $field_name)
+    ->condition('c.entity_type', $entity->entityTypeId())
+    ->condition('c.field_id', $entity->entityTypeId() . '__' . $field_name)
     ->addTag('entity_access')
     ->addTag('comment_filter')
     ->addMetaData('base_table', 'comment')
@@ -922,7 +922,7 @@ function comment_entity_insert(EntityInterface $entity) {
   // Allow bulk updates and inserts to temporarily disable the
   // maintenance of the {comment_entity_statistics} table.
   if (\Drupal::state()->get('comment.maintain_entity_statistics') &&
-    $fields = \Drupal::service('comment.manager')->getFields($entity->entityType())) {
+    $fields = \Drupal::service('comment.manager')->getFields($entity->entityTypeId())) {
     $query = db_insert('comment_entity_statistics')
      ->fields(array(
       'entity_id',
@@ -955,8 +955,8 @@ function comment_entity_insert(EntityInterface $entity) {
       }
       $query->values(array(
         'entity_id' => $entity->id(),
-        'entity_type' => $entity->entityType(),
-        'field_id' => $entity->entityType() . '__' . $field_name,
+        'entity_type' => $entity->entityTypeId(),
+        'field_id' => $entity->entityTypeId() . '__' . $field_name,
         'cid' => 0,
         'last_comment_timestamp' => $last_comment_timestamp,
         'last_comment_name' => NULL,
@@ -975,13 +975,13 @@ function comment_entity_predelete(EntityInterface $entity) {
   $cids = db_select('comment', 'c')
     ->fields('c', array('cid'))
     ->condition('entity_id', $entity->id())
-    ->condition('entity_type', $entity->entityType())
+    ->condition('entity_type', $entity->entityTypeId())
     ->execute()
     ->fetchCol();
   entity_delete_multiple('comment', $cids);
   db_delete('comment_entity_statistics')
     ->condition('entity_id', $entity->id())
-    ->condition('entity_type', $entity->entityType())
+    ->condition('entity_type', $entity->entityTypeId())
     ->execute();
 }
 
@@ -1482,7 +1482,7 @@ function template_preprocess_comment(&$variables) {
   else {
     // @todo Use $entity->getAuthorId() after https://drupal.org/node/2078387
     if ($commented_entity->hasField('uid') && $comment->uid->target_id == $commented_entity->get('uid')->value) {
-      $variables['attributes']['class'][] = 'by-' . $commented_entity->entityType() . '-author';
+      $variables['attributes']['class'][] = 'by-' . $commented_entity->entityTypeId() . '-author';
     }
   }
   // Add clearfix class.
@@ -1505,6 +1505,7 @@ function template_preprocess_comment(&$variables) {
  * @ingroup themeable
  */
 function theme_comment_post_forbidden($variables) {
+  /** @var $entity \Drupal\Core\Entity\EntityInterface */
   $entity = $variables['commented_entity'];
   $field_name = $variables['field_name'];
 
@@ -1521,11 +1522,11 @@ function theme_comment_post_forbidden($variables) {
     }
 
     if ($authenticated_post_comments) {
-      $instance = \Drupal::service('field.info')->getInstance($entity->entityType(), $entity->bundle(), $field_name);
+      $instance = \Drupal::service('field.info')->getInstance($entity->entityTypeId(), $entity->bundle(), $field_name);
       // We cannot use drupal_get_destination() because these links
       // sometimes appear on /node and taxonomy listing pages.
       if ($instance->getSetting('form_location') == COMMENT_FORM_SEPARATE_PAGE) {
-        $destination = array('destination' => 'comment/reply/' . $entity->entityType() . '/' . $entity->id() . '/' . $field_name . '#comment-form');
+        $destination = array('destination' => 'comment/reply/' . $entity->entityTypeId() . '/' . $entity->id() . '/' . $field_name . '#comment-form');
       }
       else {
         $uri = $entity->uri();
@@ -1633,7 +1634,7 @@ function comment_ranking() {
  * Implements hook_file_download_access().
  */
 function comment_file_download_access($field, EntityInterface $entity, FileInterface $file) {
-  if ($entity->entityType() == 'comment') {
+  if ($entity->entityTypeId() == 'comment') {
     if (user_access('access comments') && $entity->status->value == CommentInterface::PUBLISHED || user_access('administer comments')) {
       $commented_entity = entity_load($entity->entity_type->value, $entity->entity_id->value);
       // Check access to parent entity.
diff --git a/core/modules/comment/comment.tokens.inc b/core/modules/comment/comment.tokens.inc
index eab4d3e..f01685b 100644
--- a/core/modules/comment/comment.tokens.inc
+++ b/core/modules/comment/comment.tokens.inc
@@ -250,13 +250,14 @@ function comment_tokens($type, $tokens, array $data = array(), array $options =
   }
   elseif (($type == 'entity' & !empty($data['entity'])) ||
     ($type == 'node' & !empty($data['node']))) {
+    /** @var $entity \Drupal\Core\Entity\ContentEntityInterface */
     $entity = !empty($data['entity']) ? $data['entity'] : $data['node'];
 
     foreach ($tokens as $name => $original) {
       switch($name) {
         case 'comment-count':
           $count = 0;
-          $fields = array_keys(\Drupal::service('comment.manager')->getFields($entity->entityType()));
+          $fields = array_keys(\Drupal::service('comment.manager')->getFields($entity->entityTypeId()));
           $definitions = array_keys($entity->getPropertyDefinitions());
           $valid_fields = array_intersect($fields, $definitions);
           foreach ($valid_fields as $field_name) {
@@ -266,7 +267,7 @@ function comment_tokens($type, $tokens, array $data = array(), array $options =
           break;
 
         case 'comment-count-new':
-          $replacements[$original] = comment_num_new($entity->id(), $entity->entityType());
+          $replacements[$original] = comment_num_new($entity->id(), $entity->entityTypeId());
           break;
       }
     }
diff --git a/core/modules/comment/lib/Drupal/comment/CommentFormController.php b/core/modules/comment/lib/Drupal/comment/CommentFormController.php
index 3f88b51..c80bedf 100644
--- a/core/modules/comment/lib/Drupal/comment/CommentFormController.php
+++ b/core/modules/comment/lib/Drupal/comment/CommentFormController.php
@@ -80,11 +80,11 @@ public function form(array $form, array &$form_state) {
     $comment = $this->entity;
     $entity = $this->entityManager->getStorageController($comment->entity_type->value)->load($comment->entity_id->value);
     $field_name = $comment->field_name->value;
-    $instance = $this->fieldInfo->getInstance($entity->entityType(), $entity->bundle(), $field_name);
+    $instance = $this->fieldInfo->getInstance($entity->entityTypeId(), $entity->bundle(), $field_name);
 
     // Use #comment-form as unique jump target, regardless of entity type.
     $form['#id'] = drupal_html_id('comment_form');
-    $form['#theme'] = array('comment_form__' . $entity->entityType() . '__' . $entity->bundle() . '__' . $field_name, 'comment_form');
+    $form['#theme'] = array('comment_form__' . $entity->entityTypeId() . '__' . $entity->bundle() . '__' . $field_name, 'comment_form');
 
     $anonymous_contact = $instance->getSetting('anonymous');
     $is_admin = $comment->id() && $this->currentUser->hasPermission('administer comments');
@@ -97,7 +97,7 @@ public function form(array $form, array &$form_state) {
     // If not replying to a comment, use our dedicated page callback for new
     // Comments on entities.
     if (!$comment->id() && empty($comment->pid->target_id)) {
-      $form['#action'] = url('comment/reply/' . $entity->entityType() . '/' . $entity->id() . '/' . $field_name);
+      $form['#action'] = url('comment/reply/' . $entity->entityTypeId() . '/' . $entity->id() . '/' . $field_name);
     }
 
     if (isset($form_state['comment_preview'])) {
@@ -393,7 +393,7 @@ public function save(array $form, array &$form_state) {
       }
       $query = array();
       // Find the current display page for this comment.
-      $instance = $this->fieldInfo->getInstance($entity->entityType(), $entity->bundle(), $field_name);
+      $instance = $this->fieldInfo->getInstance($entity->entityTypeId(), $entity->bundle(), $field_name);
       $page = comment_get_display_page($comment->id(), $instance);
       if ($page > 0) {
         $query['page'] = $page;
@@ -411,6 +411,6 @@ public function save(array $form, array &$form_state) {
     // Clear the block and page caches so that anonymous users see the comment
     // they have posted.
     Cache::invalidateTags(array('content' => TRUE));
-    $this->entityManager->getViewBuilder($entity->entityType())->resetCache(array($entity));
+    $this->entityManager->getViewBuilder($entity->entityTypeId())->resetCache(array($entity));
   }
 }
diff --git a/core/modules/comment/lib/Drupal/comment/CommentViewBuilder.php b/core/modules/comment/lib/Drupal/comment/CommentViewBuilder.php
index 7dd6517..c5e851e 100644
--- a/core/modules/comment/lib/Drupal/comment/CommentViewBuilder.php
+++ b/core/modules/comment/lib/Drupal/comment/CommentViewBuilder.php
@@ -131,7 +131,7 @@ public function buildContent(array $entities, array $displays, $view_mode, $lang
           'comment_entity_id' => $entity->id(),
           'view_mode' => $view_mode,
           'langcode' => $langcode,
-          'commented_entity_type' => $commented_entity->entityType(),
+          'commented_entity_type' => $commented_entity->entityTypeId(),
           'commented_entity_id' => $commented_entity->id(),
           'in_preview' => !empty($entity->in_preview),
         ),
@@ -274,7 +274,7 @@ protected function alterBuild(array &$build, EntityInterface $comment, EntityVie
     if (empty($comment->in_preview)) {
       $prefix = '';
       $commented_entity = $this->entityManager->getStorageController($comment->entity_type->value)->load($comment->entity_id->value);
-      $instance = $this->fieldInfo->getInstance($commented_entity->entityType(), $commented_entity->bundle(), $comment->field_name->value);
+      $instance = $this->fieldInfo->getInstance($commented_entity->entityTypeId(), $commented_entity->bundle(), $comment->field_name->value);
       $is_threaded = isset($comment->divs)
         && $instance->getSetting('default_mode') == COMMENT_MODE_THREADED;
 
diff --git a/core/modules/comment/lib/Drupal/comment/Controller/CommentController.php b/core/modules/comment/lib/Drupal/comment/Controller/CommentController.php
index 15f09a7..cbe8897 100644
--- a/core/modules/comment/lib/Drupal/comment/Controller/CommentController.php
+++ b/core/modules/comment/lib/Drupal/comment/Controller/CommentController.php
@@ -124,7 +124,7 @@ public function commentPermalink(Request $request, CommentInterface $comment) {
       if (!$entity->access('view')) {
         throw new AccessDeniedHttpException();
       }
-      $instance = $this->fieldInfo->getInstance($entity->entityType(), $entity->bundle(), $comment->field_name->value);
+      $instance = $this->fieldInfo->getInstance($entity->entityTypeId(), $entity->bundle(), $comment->field_name->value);
 
       // Find the current display page for this comment.
       $page = comment_get_display_page($comment->id(), $instance);
@@ -251,7 +251,7 @@ public function getReplyForm(Request $request, $entity_type, $entity_id, $field_
         // redirect loop.
         $entity->{$field_name}->status = COMMENT_HIDDEN;
         // Render array of the entity full view mode.
-        $build['commented_entity'] = $this->entityManager()->getViewBuilder($entity->entityType())->view($entity, 'full');
+        $build['commented_entity'] = $this->entityManager()->getViewBuilder($entity->entityTypeId())->view($entity, 'full');
         unset($build['commented_entity']['#cache']);
         $entity->{$field_name}->status = $status;
       }
@@ -264,8 +264,8 @@ public function getReplyForm(Request $request, $entity_type, $entity_id, $field_
     $comment = $this->entityManager()->getStorageController('comment')->create(array(
       'entity_id' => $entity->id(),
       'pid' => $pid,
-      'entity_type' => $entity->entityType(),
-      'field_id' => $entity->entityType() . '__' . $field_name,
+      'entity_type' => $entity->entityTypeId(),
+      'field_id' => $entity->entityTypeId() . '__' . $field_name,
     ));
     $build['comment_form'] = $this->entityManager()->getForm($comment);
 
diff --git a/core/modules/comment/lib/Drupal/comment/Plugin/Field/FieldFormatter/CommentDefaultFormatter.php b/core/modules/comment/lib/Drupal/comment/Plugin/Field/FieldFormatter/CommentDefaultFormatter.php
index b6ce094..7817bc3 100644
--- a/core/modules/comment/lib/Drupal/comment/Plugin/Field/FieldFormatter/CommentDefaultFormatter.php
+++ b/core/modules/comment/lib/Drupal/comment/Plugin/Field/FieldFormatter/CommentDefaultFormatter.php
@@ -159,7 +159,7 @@ public function viewElements(FieldItemListInterface $items) {
               '#type' => 'render_cache_placeholder',
               '#callback' => '\Drupal\comment\Plugin\Field\FieldFormatter\CommentDefaultFormatter::renderForm',
               '#context' => array(
-                'entity_type' => $entity->entityType(),
+                'entity_type' => $entity->entityTypeId(),
                 'entity_id' => $entity->id(),
                 'field_name' => $field_name,
               ),
@@ -169,7 +169,7 @@ public function viewElements(FieldItemListInterface $items) {
       }
 
       $elements[] = $output + array(
-        '#theme' => 'comment_wrapper__' . $entity->entityType() . '__' . $entity->bundle() . '__' . $field_name,
+        '#theme' => 'comment_wrapper__' . $entity->entityTypeId() . '__' . $entity->bundle() . '__' . $field_name,
         '#entity' => $entity,
         '#display_mode' => $this->getFieldSetting('default_mode'),
         'comments' => array(),
diff --git a/core/modules/comment/lib/Drupal/comment/Plugin/Field/FieldType/CommentItem.php b/core/modules/comment/lib/Drupal/comment/Plugin/Field/FieldType/CommentItem.php
index 3145e8f..ac71c6f 100644
--- a/core/modules/comment/lib/Drupal/comment/Plugin/Field/FieldType/CommentItem.php
+++ b/core/modules/comment/lib/Drupal/comment/Plugin/Field/FieldType/CommentItem.php
@@ -94,7 +94,7 @@ public function instanceSettingsForm(array $form, array &$form_state) {
 
     $settings = $this->getFieldSettings();
 
-    $entity_type = $this->getEntity()->entityType();
+    $entity_type = $this->getEntity()->entityTypeId();
     $field_name = $this->getFieldDefinition()->getName();
 
     $element['comment'] = array(
diff --git a/core/modules/config/lib/Drupal/config/Form/ConfigSingleImportForm.php b/core/modules/config/lib/Drupal/config/Form/ConfigSingleImportForm.php
index b89f68b..ed9b759 100644
--- a/core/modules/config/lib/Drupal/config/Form/ConfigSingleImportForm.php
+++ b/core/modules/config/lib/Drupal/config/Form/ConfigSingleImportForm.php
@@ -237,7 +237,7 @@ public function submitForm(array &$form, array &$form_state) {
           ->getStorageController($this->data['config_type'])
           ->create($this->data['import']);
         $entity->save();
-        drupal_set_message($this->t('The @entity_type %label was imported.', array('@entity_type' => $entity->entityType(), '%label' => $entity->label())));
+        drupal_set_message($this->t('The @entity_type %label was imported.', array('@entity_type' => $entity->entityTypeId(), '%label' => $entity->label())));
       }
       catch (\Exception $e) {
         drupal_set_message($e->getMessage(), 'error');
diff --git a/core/modules/config/lib/Drupal/config/Tests/ConfigEntityTest.php b/core/modules/config/lib/Drupal/config/Tests/ConfigEntityTest.php
index 2832c93..a6ea3d6 100644
--- a/core/modules/config/lib/Drupal/config/Tests/ConfigEntityTest.php
+++ b/core/modules/config/lib/Drupal/config/Tests/ConfigEntityTest.php
@@ -60,7 +60,7 @@ function testCRUD() {
     $this->assertIdentical($empty->get('langcode'), $default_langcode);
 
     // Verify Entity properties/methods on the newly created empty entity.
-    $this->assertIdentical($empty->entityType(), 'config_test');
+    $this->assertIdentical($empty->entityTypeId(), 'config_test');
     $uri = $empty->uri();
     $this->assertIdentical($uri['path'], 'admin/structure/config_test/manage');
 
diff --git a/core/modules/config_translation/lib/Drupal/config_translation/Tests/ConfigTranslationOverviewTest.php b/core/modules/config_translation/lib/Drupal/config_translation/Tests/ConfigTranslationOverviewTest.php
index a471ce9..771c7fd 100644
--- a/core/modules/config_translation/lib/Drupal/config_translation/Tests/ConfigTranslationOverviewTest.php
+++ b/core/modules/config_translation/lib/Drupal/config_translation/Tests/ConfigTranslationOverviewTest.php
@@ -93,7 +93,7 @@ public function testMapperListPage() {
       $this->assertLinkByHref($base_url . '/translate');
       $this->assertText(String::checkPlain($test_entity->label()));
 
-      $entity_info = \Drupal::entityManager()->getDefinition($test_entity->entityType());
+      $entity_info = \Drupal::entityManager()->getDefinition($test_entity->entityTypeId());
       $this->drupalGet($base_url . '/translate');
 
       $title = t('!label !entity_type', array('!label' => $test_entity->label(), '!entity_type' => $entity_info->getLowercaseLabel()));
diff --git a/core/modules/content_translation/content_translation.module b/core/modules/content_translation/content_translation.module
index 70d20dc..e798950 100644
--- a/core/modules/content_translation/content_translation.module
+++ b/core/modules/content_translation/content_translation.module
@@ -347,8 +347,8 @@ function content_translation_translate_access(EntityInterface $entity) {
  *   the current user.
  */
 function content_translation_view_access(EntityInterface $entity, $langcode, AccountInterface $account = NULL) {
-  $entity_type = $entity->entityType();
-  $info = $entity->entityInfo();
+  $entity_type = $entity->entityTypeId();
+  $info = $entity->entityType();
   $permission = "translate $entity_type";
   if ($info->getPermissionGranularity() == 'bundle') {
     $permission = "translate {$entity->bundle()} $entity_type";
@@ -575,7 +575,7 @@ function content_translation_form_controller(array $form_state) {
  * @todo Move to \Drupal\content_translation\ContentTranslationManager.
  */
 function content_translation_access(EntityInterface $entity, $op) {
-  return content_translation_controller($entity->entityType())->getTranslationAccess($entity, $op) ;
+  return content_translation_controller($entity->entityTypeId())->getTranslationAccess($entity, $op) ;
 }
 
 /**
@@ -641,7 +641,7 @@ function content_translation_form_alter(array &$form, array &$form_state) {
   $entity = $form_controller ? $form_controller->getEntity() : NULL;
 
   if ($entity instanceof ContentEntityInterface && $entity->isTranslatable() && count($entity->getTranslationLanguages()) > 1) {
-    $controller = content_translation_controller($entity->entityType());
+    $controller = content_translation_controller($entity->entityTypeId());
     $controller->entityFormAlter($form, $form_state, $entity);
 
     // @todo Move the following lines to the code generating the property form
@@ -746,7 +746,7 @@ function content_translation_entity_insert(EntityInterface $entity) {
       'changed' => REQUEST_TIME,
     );
 
-    $translation['entity_type'] = $entity->entityType();
+    $translation['entity_type'] = $entity->entityTypeId();
     $translation['entity_id'] = $entity->id();
     $translation['langcode'] = $langcode;
 
@@ -772,7 +772,7 @@ function content_translation_entity_delete(EntityInterface $entity) {
   }
 
   db_delete('content_translation')
-    ->condition('entity_type', $entity->entityType())
+    ->condition('entity_type', $entity->entityTypeId())
     ->condition('entity_id', $entity->id())
     ->execute();
 }
diff --git a/core/modules/content_translation/content_translation.pages.inc b/core/modules/content_translation/content_translation.pages.inc
index 43e5331..b117dec 100644
--- a/core/modules/content_translation/content_translation.pages.inc
+++ b/core/modules/content_translation/content_translation.pages.inc
@@ -18,7 +18,7 @@
  * @deprecated Use \Drupal\content_translation\Controller\ContentTranslationController::overview()
  */
 function content_translation_overview(EntityInterface $entity) {
-  $controller = content_translation_controller($entity->entityType());
+  $controller = content_translation_controller($entity->entityTypeId());
   $entity_manager = \Drupal::entityManager();
   $languages = language_list();
   $original = $entity->getUntranslated()->language()->id;
@@ -42,7 +42,7 @@ function content_translation_overview(EntityInterface $entity) {
 
     // Determine whether the current entity is translatable.
     $translatable = FALSE;
-    foreach (field_info_instances($entity->entityType(), $entity->bundle()) as $instance) {
+    foreach (field_info_instances($entity->entityTypeId(), $entity->bundle()) as $instance) {
       if ($instance->isTranslatable()) {
         $translatable = TRUE;
         break;
diff --git a/core/modules/content_translation/lib/Drupal/content_translation/Access/ContentTranslationManageAccessCheck.php b/core/modules/content_translation/lib/Drupal/content_translation/Access/ContentTranslationManageAccessCheck.php
index 7bf8ea0..60cac98 100644
--- a/core/modules/content_translation/lib/Drupal/content_translation/Access/ContentTranslationManageAccessCheck.php
+++ b/core/modules/content_translation/lib/Drupal/content_translation/Access/ContentTranslationManageAccessCheck.php
@@ -41,11 +41,12 @@ public function __construct(EntityManagerInterface $manager) {
    */
   public function access(Route $route, Request $request, AccountInterface $account) {
     $entity_type = $request->attributes->get('_entity_type');
+    /** @var $entity \Drupal\Core\Entity\EntityInterface */
     if ($entity = $request->attributes->get($entity_type)) {
       $route_requirements = $route->getRequirements();
       $operation = $route_requirements['_access_content_translation_manage'];
       $controller_class = $this->entityManager->getControllerClass($entity_type, 'translation');
-      $controller = new $controller_class($entity->entityInfo());
+      $controller = new $controller_class($entity->entityType());
 
       // Load translation.
       $translations = $entity->getTranslationLanguages();
diff --git a/core/modules/content_translation/lib/Drupal/content_translation/ContentTranslationController.php b/core/modules/content_translation/lib/Drupal/content_translation/ContentTranslationController.php
index e99c9b0..65f53da 100644
--- a/core/modules/content_translation/lib/Drupal/content_translation/ContentTranslationController.php
+++ b/core/modules/content_translation/lib/Drupal/content_translation/ContentTranslationController.php
@@ -57,12 +57,12 @@ public function retranslate(EntityInterface $entity, $langcode = NULL) {
   public function getTranslationAccess(EntityInterface $entity, $op) {
     // @todo Move this logic into a translation access controller checking also
     //   the translation language and the given account.
-    $info = $entity->entityInfo();
+    $info = $entity->entityType();
     $translate_permission = TRUE;
     // If no permission granularity is defined this entity type does not need an
     // explicit translate permission.
     if (!user_access('translate any entity') && $permission_granularity = $info->getPermissionGranularity()) {
-      $translate_permission = user_access($permission_granularity == 'bundle' ? "translate {$entity->bundle()} {$entity->entityType()}" : "translate {$entity->entityType()}");
+      $translate_permission = user_access($permission_granularity == 'bundle' ? "translate {$entity->bundle()} {$entity->entityTypeId()}" : "translate {$entity->entityTypeId()}");
     }
     return $translate_permission && user_access("$op content translations");
   }
diff --git a/core/modules/content_translation/lib/Drupal/content_translation/FieldTranslationSynchronizer.php b/core/modules/content_translation/lib/Drupal/content_translation/FieldTranslationSynchronizer.php
index 4efde31..a2f6b35 100644
--- a/core/modules/content_translation/lib/Drupal/content_translation/FieldTranslationSynchronizer.php
+++ b/core/modules/content_translation/lib/Drupal/content_translation/FieldTranslationSynchronizer.php
@@ -47,7 +47,7 @@ public function synchronizeFields(ContentEntityInterface $entity, $sync_langcode
     }
 
     // If the entity language is being changed there is nothing to synchronize.
-    $entity_type = $entity->entityType();
+    $entity_type = $entity->entityTypeId();
     $entity_unchanged = isset($entity->original) ? $entity->original : $this->entityManager->getStorageController($entity_type)->loadUnchanged($entity->id());
     if ($entity->getUntranslated()->language()->id != $entity_unchanged->getUntranslated()->language()->id) {
       return;
diff --git a/core/modules/content_translation/lib/Drupal/content_translation/Form/ContentTranslationDeleteForm.php b/core/modules/content_translation/lib/Drupal/content_translation/Form/ContentTranslationDeleteForm.php
index 5d33cdf..d7814a7 100644
--- a/core/modules/content_translation/lib/Drupal/content_translation/Form/ContentTranslationDeleteForm.php
+++ b/core/modules/content_translation/lib/Drupal/content_translation/Form/ContentTranslationDeleteForm.php
@@ -64,9 +64,9 @@ public function getQuestion() {
    */
   public function getCancelRoute() {
     return array(
-      'route_name' => $this->entity->entityInfo()->getLinkTemplate('drupal:content-translation-overview'),
+      'route_name' => $this->entity->entityType()->getLinkTemplate('drupal:content-translation-overview'),
       'route_parameters' => array(
-        $this->entity->entityType() => $this->entity->id(),
+        $this->entity->entityTypeId() => $this->entity->id(),
       ),
     );
   }
diff --git a/core/modules/edit/edit.module b/core/modules/edit/edit.module
index 3eaabcc..496934c 100644
--- a/core/modules/edit/edit.module
+++ b/core/modules/edit/edit.module
@@ -160,6 +160,7 @@ function edit_field_formatter_info_alter(&$info) {
  */
 function edit_preprocess_field(&$variables) {
   $element = $variables['element'];
+  /** @var $entity \Drupal\Core\Entity\EntityInterface */
   $entity = $element['#object'];
 
   // Edit module only supports view modes, not dynamically defined "display
@@ -174,7 +175,7 @@ function edit_preprocess_field(&$variables) {
   // fields") and computed fields are not editable.
   $definition = $entity->getPropertyDefinition($element['#field_name']);
   if ($definition && !$definition->isComputed()) {
-    $variables['attributes']['data-edit-field-id'] = $entity->entityType() . '/' . $entity->id() . '/' . $element['#field_name'] . '/' . $element['#language'] . '/' . $element['#view_mode'];
+    $variables['attributes']['data-edit-field-id'] = $entity->entityTypeId() . '/' . $entity->id() . '/' . $element['#field_name'] . '/' . $element['#language'] . '/' . $element['#view_mode'];
   }
 }
 
@@ -182,7 +183,7 @@ function edit_preprocess_field(&$variables) {
  * Implements hook_entity_view_alter().
  */
 function edit_entity_view_alter(&$build, EntityInterface $entity, EntityViewDisplayInterface $display) {
-  $build['#attributes']['data-edit-entity-id'] = $entity->entityType() . '/' . $entity->id();
+  $build['#attributes']['data-edit-entity-id'] = $entity->entityTypeId() . '/' . $entity->id();
 }
 
 /**
diff --git a/core/modules/edit/lib/Drupal/edit/EditController.php b/core/modules/edit/lib/Drupal/edit/EditController.php
index 1e62ab6..9a9292d 100644
--- a/core/modules/edit/lib/Drupal/edit/EditController.php
+++ b/core/modules/edit/lib/Drupal/edit/EditController.php
@@ -162,7 +162,7 @@ public function metadata(Request $request) {
       }
 
       // If the entity information for this field is requested, include it.
-      $entity_id = $entity->entityType() . '/' . $entity_id;
+      $entity_id = $entity->entityTypeId() . '/' . $entity_id;
       if (is_array($entities) && in_array($entity_id, $entities) && !isset($metadata[$entity_id])) {
         $metadata[$entity_id] = $this->metadataGenerator->generateEntity($entity, $langcode);
       }
@@ -313,7 +313,7 @@ public function fieldForm(EntityInterface $entity, $field_name, $langcode, $view
    *       "public" instead of "protected".
    */
   public function renderField(EntityInterface $entity, $field_name, $langcode, $view_mode_id) {
-    $entity_view_mode_ids = array_keys(entity_get_view_modes($entity->entityType()));
+    $entity_view_mode_ids = array_keys(entity_get_view_modes($entity->entityTypeId()));
     if (in_array($view_mode_id, $entity_view_mode_ids)) {
       $output = field_view_field($entity, $field_name, $view_mode_id, $langcode);
     }
@@ -348,7 +348,7 @@ public function entitySave(EntityInterface $entity) {
     // Return information about the entity that allows a front end application
     // to identify it.
     $output = array(
-      'entity_type' => $entity->entityType(),
+      'entity_type' => $entity->entityTypeId(),
       'entity_id' => $entity->id()
     );
 
diff --git a/core/modules/edit/lib/Drupal/edit/Form/EditFieldForm.php b/core/modules/edit/lib/Drupal/edit/Form/EditFieldForm.php
index 1c356b2..aee8829 100644
--- a/core/modules/edit/lib/Drupal/edit/Form/EditFieldForm.php
+++ b/core/modules/edit/lib/Drupal/edit/Form/EditFieldForm.php
@@ -116,7 +116,7 @@ public function buildForm(array $form, array &$form_state, EntityInterface $enti
   protected function init(array &$form_state, EntityInterface $entity, $field_name) {
     // @todo Rather than special-casing $node->revision, invoke prepareEdit()
     //   once http://drupal.org/node/1863258 lands.
-    if ($entity->entityType() == 'node') {
+    if ($entity->entityTypeId() == 'node') {
       $node_type_settings = $this->nodeTypeStorage->load($entity->bundle())->getModuleSettings('node');
       $options = (isset($node_type_settings['options'])) ? $node_type_settings['options'] : array();
       $entity->setNewRevision(!empty($options['revision']));
@@ -168,6 +168,7 @@ public function submitForm(array &$form, array &$form_state) {
    * it back to the form state and save it.
    */
   protected function buildEntity(array $form, array &$form_state) {
+    /** @var $entity \Drupal\Core\Entity\EntityInterface */
     $entity = clone $form_state['entity'];
     $field_name = $form_state['field_name'];
 
@@ -175,7 +176,7 @@ protected function buildEntity(array $form, array &$form_state) {
 
     // @todo Refine automated log messages and abstract them to all entity
     //   types: http://drupal.org/node/1678002.
-    if ($entity->entityType() == 'node' && $entity->isNewRevision() && !isset($entity->log)) {
+    if ($entity->entityTypeId() == 'node' && $entity->isNewRevision() && !isset($entity->log)) {
       $entity->log = t('Updated the %field-name field through in-place editing.', array('%field-name' => $entity->get($field_name)->getFieldDefinition()->getLabel()));
     }
 
diff --git a/core/modules/edit/lib/Drupal/edit/MetadataGenerator.php b/core/modules/edit/lib/Drupal/edit/MetadataGenerator.php
index 4f18ed4..74d28ba 100644
--- a/core/modules/edit/lib/Drupal/edit/MetadataGenerator.php
+++ b/core/modules/edit/lib/Drupal/edit/MetadataGenerator.php
@@ -91,7 +91,7 @@ public function generateField(EntityInterface $entity, FieldDefinitionInterface
       'label' => check_plain($label),
       'access' => TRUE,
       'editor' => $editor_id,
-      'aria' => t('Entity @type @id, field @field', array('@type' => $entity->entityType(), '@id' => $entity->id(), '@field' => $label)),
+      'aria' => t('Entity @type @id, field @field', array('@type' => $entity->entityTypeId(), '@id' => $entity->id(), '@field' => $label)),
     );
     $custom_metadata = $editor->getMetadata($field_definition, $items);
     if (count($custom_metadata)) {
diff --git a/core/modules/edit/lib/Drupal/edit/Tests/MetadataGeneratorTest.php b/core/modules/edit/lib/Drupal/edit/Tests/MetadataGeneratorTest.php
index c7f82e0..f8efa95 100644
--- a/core/modules/edit/lib/Drupal/edit/Tests/MetadataGeneratorTest.php
+++ b/core/modules/edit/lib/Drupal/edit/Tests/MetadataGeneratorTest.php
@@ -103,7 +103,7 @@ public function testSimpleEntityType() {
     $entity = entity_load('entity_test', $this->entity->id());
 
     // Verify metadata for field 1.
-    $instance_1 = field_info_instance($entity->entityType(), $field_1_name, $entity->bundle());
+    $instance_1 = field_info_instance($entity->entityTypeId(), $field_1_name, $entity->bundle());
     $metadata_1 = $this->metadataGenerator->generateField($entity, $instance_1, Language::LANGCODE_NOT_SPECIFIED, 'default');
     $expected_1 = array(
       'access' => TRUE,
@@ -114,7 +114,7 @@ public function testSimpleEntityType() {
     $this->assertEqual($expected_1, $metadata_1, 'The correct metadata is generated for the first field.');
 
     // Verify metadata for field 2.
-    $instance_2 = field_info_instance($entity->entityType(), $field_2_name, $entity->bundle());
+    $instance_2 = field_info_instance($entity->entityTypeId(), $field_2_name, $entity->bundle());
     $metadata_2 = $this->metadataGenerator->generateField($entity, $instance_2, Language::LANGCODE_NOT_SPECIFIED, 'default');
     $expected_2 = array(
       'access' => TRUE,
@@ -169,7 +169,7 @@ public function testEditorWithCustomMetadata() {
     $entity = entity_load('entity_test', $this->entity->id());
 
     // Verify metadata.
-    $instance = field_info_instance($entity->entityType(), $field_name, $entity->bundle());
+    $instance = field_info_instance($entity->entityTypeId(), $field_name, $entity->bundle());
     $metadata = $this->metadataGenerator->generateField($entity, $instance, Language::LANGCODE_NOT_SPECIFIED, 'default');
     $expected = array(
       'access' => TRUE,
diff --git a/core/modules/edit/tests/modules/edit_test.module b/core/modules/edit/tests/modules/edit_test.module
index 157350d..d7bbd12 100644
--- a/core/modules/edit/tests/modules/edit_test.module
+++ b/core/modules/edit/tests/modules/edit_test.module
@@ -13,13 +13,13 @@
  * Implements hook_entity_view_alter().
  */
 function edit_test_entity_view_alter(&$build, EntityInterface $entity, EntityViewDisplayInterface $display) {
-  if ($entity->entityType() == 'node' && $entity->bundle() == 'article') {
+  if ($entity->entityTypeId() == 'node' && $entity->bundle() == 'article') {
     $build['pseudo'] = array(
       '#theme' => 'field',
       '#title' => 'My pseudo field',
       '#field_name' => 'edit_test_pseudo_field',
       '#label_display' => 'Label',
-      '#entity_type' => $entity->entityType(),
+      '#entity_type' => $entity->entityTypeId(),
       '#bundle' => $entity->bundle(),
       '#language' => Language::LANGCODE_NOT_SPECIFIED,
       '#field_type' => 'pseudo',
diff --git a/core/modules/editor/editor.module b/core/modules/editor/editor.module
index affe711..76facba 100644
--- a/core/modules/editor/editor.module
+++ b/core/modules/editor/editor.module
@@ -479,7 +479,7 @@ function _editor_record_file_usage(array $uuids, EntityInterface $entity) {
       $file->status = FILE_STATUS_PERMANENT;
       $file->save();
     }
-    \Drupal::service('file.usage')->add($file, 'editor', $entity->entityType(), $entity->id());
+    \Drupal::service('file.usage')->add($file, 'editor', $entity->entityTypeId(), $entity->id());
   }
 }
 
@@ -499,7 +499,7 @@ function _editor_record_file_usage(array $uuids, EntityInterface $entity) {
 function _editor_delete_file_usage(array $uuids, EntityInterface $entity, $count) {
   foreach ($uuids as $uuid) {
     $file = entity_load_by_uuid('file', $uuid);
-    \Drupal::service('file.usage')->delete($file, 'editor', $entity->entityType(), $entity->id(), $count);
+    \Drupal::service('file.usage')->delete($file, 'editor', $entity->entityTypeId(), $entity->id(), $count);
   }
 }
 
@@ -550,7 +550,7 @@ function _editor_get_processed_text_fields(ContentEntityInterface $entity) {
   // Only return fields that have text processing enabled.
   return array_filter($configurable_fields, function ($field) use ($entity) {
     $settings = Field::fieldInfo()
-      ->getInstance($entity->entityType(), $entity->bundle(), $field)
+      ->getInstance($entity->entityTypeId(), $entity->bundle(), $field)
       ->getSettings();
     return isset($settings['text_processing']) && $settings['text_processing'] === TRUE;
   });
diff --git a/core/modules/editor/lib/Drupal/editor/Tests/EditIntegrationTest.php b/core/modules/editor/lib/Drupal/editor/Tests/EditIntegrationTest.php
index 9081290..8d468d6 100644
--- a/core/modules/editor/lib/Drupal/editor/Tests/EditIntegrationTest.php
+++ b/core/modules/editor/lib/Drupal/editor/Tests/EditIntegrationTest.php
@@ -160,7 +160,7 @@ public function testMetadata() {
     $entity = entity_load('entity_test', $this->entity->id());
 
     // Verify metadata.
-    $instance = field_info_instance($entity->entityType(), $this->field_name, $entity->bundle());
+    $instance = field_info_instance($entity->entityTypeId(), $this->field_name, $entity->bundle());
     $metadata = $this->metadataGenerator->generateField($entity, $instance, Language::LANGCODE_NOT_SPECIFIED, 'default');
     $expected = array(
       'access' => TRUE,
diff --git a/core/modules/email/lib/Drupal/email/Tests/EmailFieldTest.php b/core/modules/email/lib/Drupal/email/Tests/EmailFieldTest.php
index 60fd532..3540e91 100644
--- a/core/modules/email/lib/Drupal/email/Tests/EmailFieldTest.php
+++ b/core/modules/email/lib/Drupal/email/Tests/EmailFieldTest.php
@@ -110,7 +110,7 @@ function testEmailField() {
 
     // Verify that a mailto link is displayed.
     $entity = entity_load('entity_test', $id);
-    $display = entity_get_display($entity->entityType(), $entity->bundle(), 'full');
+    $display = entity_get_display($entity->entityTypeId(), $entity->bundle(), 'full');
     $entity->content = field_attach_view($entity, $display);
     $this->drupalSetContent(drupal_render($entity->content));
     $this->assertLinkByHref('mailto:test@example.com');
diff --git a/core/modules/entity/lib/Drupal/entity/Entity/EntityFormDisplay.php b/core/modules/entity/lib/Drupal/entity/Entity/EntityFormDisplay.php
index a21a849..a5aab939 100644
--- a/core/modules/entity/lib/Drupal/entity/Entity/EntityFormDisplay.php
+++ b/core/modules/entity/lib/Drupal/entity/Entity/EntityFormDisplay.php
@@ -72,7 +72,7 @@ public function getRenderer($field_name) {
    */
   public function serialize() {
     // Only store the definition, not external objects or derived data.
-    $data = $this->getExportProperties() + array('entityType' => $this->entityType());
+    $data = $this->getExportProperties() + array('entityType' => $this->entityTypeId());
     return serialize($data);
   }
 
diff --git a/core/modules/entity/lib/Drupal/entity/Form/EntityDisplayModeDeleteForm.php b/core/modules/entity/lib/Drupal/entity/Form/EntityDisplayModeDeleteForm.php
index d1bdd51..8e71318 100644
--- a/core/modules/entity/lib/Drupal/entity/Form/EntityDisplayModeDeleteForm.php
+++ b/core/modules/entity/lib/Drupal/entity/Form/EntityDisplayModeDeleteForm.php
@@ -19,7 +19,7 @@ class EntityDisplayModeDeleteForm extends EntityConfirmFormBase {
    */
   public function getCancelRoute() {
     return array(
-      'route_name' => 'entity.' . $this->entity->entityType() . '_list',
+      'route_name' => 'entity.' . $this->entity->entityTypeId() . '_list',
     );
   }
 
@@ -27,7 +27,7 @@ public function getCancelRoute() {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    $entity_info = $this->entity->entityInfo();
+    $entity_info = $this->entity->entityType();
     return t('Are you sure you want to delete the %label @entity-type?', array('%label' => $this->entity->label(), '@entity-type' => $entity_info->getLowercaseLabel()));
   }
 
@@ -35,7 +35,7 @@ public function getQuestion() {
    * {@inheritdoc}
    */
   public function getDescription() {
-    $entity_info = $this->entity->entityInfo();
+    $entity_info = $this->entity->entityType();
     return t('Deleting a @entity-type will cause any output still requesting to use that @entity-type to use the default display settings.', array('@entity-type' => $entity_info->getLowercaseLabel()));
   }
 
@@ -52,11 +52,11 @@ public function getConfirmText() {
   public function submit(array $form, array &$form_state) {
     parent::submit($form, $form_state);
 
-    $entity_info = $this->entity->entityInfo();
+    $entity_info = $this->entity->entityType();
     drupal_set_message(t('Deleted the %label @entity-type.', array('%label' => $this->entity->label(), '@entity-type' => $entity_info->getLowercaseLabel())));
     $this->entity->delete();
     entity_info_cache_clear();
-    $form_state['redirect_route']['route_name'] = 'entity.' . $this->entity->entityType() . '_list';
+    $form_state['redirect_route']['route_name'] = 'entity.' . $this->entity->entityTypeId() . '_list';
   }
 
 }
diff --git a/core/modules/entity/lib/Drupal/entity/Form/EntityDisplayModeEditForm.php b/core/modules/entity/lib/Drupal/entity/Form/EntityDisplayModeEditForm.php
index 48c2b96..00be7e8 100644
--- a/core/modules/entity/lib/Drupal/entity/Form/EntityDisplayModeEditForm.php
+++ b/core/modules/entity/lib/Drupal/entity/Form/EntityDisplayModeEditForm.php
@@ -16,7 +16,7 @@ class EntityDisplayModeEditForm extends EntityDisplayModeFormBase {
    * {@inheritdoc}
    */
   public function delete(array $form, array &$form_state) {
-    $entity_type = $this->entity->entityType();
+    $entity_type = $this->entity->entityTypeId();
     $form_state['redirect_route'] = array(
       'route_name' => 'entity.' . $entity_type . '_delete',
       'route_parameters' => array(
diff --git a/core/modules/entity/lib/Drupal/entity/Form/EntityDisplayModeFormBase.php b/core/modules/entity/lib/Drupal/entity/Form/EntityDisplayModeFormBase.php
index 2f41ab5..7987662 100644
--- a/core/modules/entity/lib/Drupal/entity/Form/EntityDisplayModeFormBase.php
+++ b/core/modules/entity/lib/Drupal/entity/Form/EntityDisplayModeFormBase.php
@@ -66,7 +66,7 @@ public static function create(ContainerInterface $container) {
    */
   protected function init(array &$form_state) {
     parent::init($form_state);
-    $this->entityInfo = $this->entityManager->getDefinition($this->entity->entityType());
+    $this->entityInfo = $this->entityManager->getDefinition($this->entity->entityTypeId());
   }
 
   /**
@@ -110,7 +110,7 @@ public function form(array $form, array &$form_state) {
    */
   public function exists($entity_id, array $element, array $form_state) {
     return (bool) $this->queryFactory
-      ->get($this->entity->entityType())
+      ->get($this->entity->entityTypeId())
       ->condition('id', $element['#field_prefix'] . $entity_id)
       ->execute();
   }
@@ -122,7 +122,7 @@ public function save(array $form, array &$form_state) {
     drupal_set_message(t('Saved the %label @entity-type.', array('%label' => $this->entity->label(), '@entity-type' => $this->entityInfo->getLowercaseLabel())));
     $this->entity->save();
     entity_info_cache_clear();
-    $form_state['redirect_route']['route_name'] = 'entity.' . $this->entity->entityType() . '_list';
+    $form_state['redirect_route']['route_name'] = 'entity.' . $this->entity->entityTypeId() . '_list';
   }
 
 }
diff --git a/core/modules/entity_reference/lib/Drupal/entity_reference/Plugin/Field/FieldFormatter/EntityReferenceEntityFormatter.php b/core/modules/entity_reference/lib/Drupal/entity_reference/Plugin/Field/FieldFormatter/EntityReferenceEntityFormatter.php
index 70996c7..8de40fd 100644
--- a/core/modules/entity_reference/lib/Drupal/entity_reference/Plugin/Field/FieldFormatter/EntityReferenceEntityFormatter.php
+++ b/core/modules/entity_reference/lib/Drupal/entity_reference/Plugin/Field/FieldFormatter/EntityReferenceEntityFormatter.php
@@ -92,7 +92,7 @@ public function viewElements(FieldItemListInterface $items) {
       static $depth = 0;
       $depth++;
       if ($depth > 20) {
-        throw new RecursiveRenderingException(format_string('Recursive rendering detected when rendering entity @entity_type(@entity_id). Aborting rendering.', array('@entity_type' => $item->entity->entityType(), '@entity_id' => $item->target_id)));
+        throw new RecursiveRenderingException(format_string('Recursive rendering detected when rendering entity @entity_type(@entity_id). Aborting rendering.', array('@entity_type' => $item->entity->entityTypeId(), '@entity_id' => $item->target_id)));
       }
 
       if (!empty($item->target_id)) {
diff --git a/core/modules/entity_reference/lib/Drupal/entity_reference/Plugin/Field/FieldWidget/AutocompleteWidgetBase.php b/core/modules/entity_reference/lib/Drupal/entity_reference/Plugin/Field/FieldWidget/AutocompleteWidgetBase.php
index 4621c5c..3ec3cfd 100644
--- a/core/modules/entity_reference/lib/Drupal/entity_reference/Plugin/Field/FieldWidget/AutocompleteWidgetBase.php
+++ b/core/modules/entity_reference/lib/Drupal/entity_reference/Plugin/Field/FieldWidget/AutocompleteWidgetBase.php
@@ -77,7 +77,7 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
     $autocomplete_route_parameters = array(
       'type' => $this->getSetting('autocomplete_type'),
       'field_name' => $this->fieldDefinition->getName(),
-      'entity_type' => $entity->entityType(),
+      'entity_type' => $entity->entityTypeId(),
       'bundle_name' => $entity->bundle(),
     );
 
diff --git a/core/modules/field/field.attach.inc b/core/modules/field/field.attach.inc
index f800519..833db25 100644
--- a/core/modules/field/field.attach.inc
+++ b/core/modules/field/field.attach.inc
@@ -85,7 +85,7 @@
  *   An array of returned values.
  */
 function field_invoke_method($method, $target_function, EntityInterface $entity, &$a = NULL, &$b = NULL, array $options = array()) {
-  $entity_type = $entity->entityType();
+  $entity_type = $entity->entityTypeId();
 
   // Determine the list of fields to iterate on.
   $field_definitions = _field_invoke_get_field_definitions($entity_type, $entity->bundle(), $options);
@@ -127,7 +127,7 @@ function field_invoke_method($method, $target_function, EntityInterface $entity,
  * @param callable $target_function
  *   A function that receives a FieldDefinitionInterface object and a bundle
  *   name and returns the object on which the method should be invoked.
- * @param array $entities
+ * @param \Drupal\Core\Entity\EntityInterface[] $entities
  *   An array of entities, keyed by entity ID.
  * @param mixed $a
  *   (optional) A parameter for the invoked method. Defaults to NULL.
@@ -153,7 +153,7 @@ function field_invoke_method_multiple($method, $target_function, array $entities
   // Go through the entities and collect the instances on which the method
   // should be called.
   foreach ($entities as $entity) {
-    $entity_type = $entity->entityType();
+    $entity_type = $entity->entityTypeId();
     $bundle = $entity->bundle();
     $id = $entity->id();
 
diff --git a/core/modules/field/field.deprecated.inc b/core/modules/field/field.deprecated.inc
index 02f60e3..53f0851 100644
--- a/core/modules/field/field.deprecated.inc
+++ b/core/modules/field/field.deprecated.inc
@@ -287,7 +287,7 @@ function field_attach_form(EntityInterface $entity, &$form, &$form_state, $langc
 
   $form += (array) field_invoke_method('form', _field_invoke_widget_target($form_display), $entity, $form, $form_state, $options);
 
-  $form['#entity_type'] = $entity->entityType();
+  $form['#entity_type'] = $entity->entityTypeId();
   $form['#bundle'] = $entity->bundle();
 
   // Let other modules make changes to the form.
diff --git a/core/modules/field/field.module b/core/modules/field/field.module
index b2e8c76..3a0fdaf 100644
--- a/core/modules/field/field.module
+++ b/core/modules/field/field.module
@@ -344,7 +344,7 @@ function _field_filter_xss_display_allowed_tags() {
 function field_view_value(EntityInterface $entity, $field_name, $item, $display = array(), $langcode = NULL) {
   $output = array();
 
-  if ($field = field_info_field($entity->entityType(), $field_name)) {
+  if ($field = field_info_field($entity->entityTypeId(), $field_name)) {
     // Clone the entity since we are going to modify field values.
     $clone = clone $entity;
 
diff --git a/core/modules/field/lib/Drupal/field/Tests/FieldAttachOtherTest.php b/core/modules/field/lib/Drupal/field/Tests/FieldAttachOtherTest.php
index ccd6cd1..1a9b599 100644
--- a/core/modules/field/lib/Drupal/field/Tests/FieldAttachOtherTest.php
+++ b/core/modules/field/lib/Drupal/field/Tests/FieldAttachOtherTest.php
@@ -261,7 +261,7 @@ function testFieldAttachCache() {
     $this->assertFalse(cache('field')->get($cid), 'Cached: no cache entry on insert');
 
     // Load, and check that a cache entry is present with the expected values.
-    $controller = $this->container->get('entity.manager')->getStorageController($entity->entityType());
+    $controller = $this->container->get('entity.manager')->getStorageController($entity->entityTypeId());
     $controller->resetCache();
     $controller->load($entity->id());
     $cache = cache('field')->get($cid);
diff --git a/core/modules/field/lib/Drupal/field/Tests/FieldAttachStorageTest.php b/core/modules/field/lib/Drupal/field/Tests/FieldAttachStorageTest.php
index 6d3ecb7..8d0eec5 100644
--- a/core/modules/field/lib/Drupal/field/Tests/FieldAttachStorageTest.php
+++ b/core/modules/field/lib/Drupal/field/Tests/FieldAttachStorageTest.php
@@ -156,7 +156,7 @@ function testFieldAttachLoadMultiple() {
     }
 
     // Check that a single load correctly loads field values for both entities.
-    $controller = $this->container->get('entity.manager')->getStorageController($entity->entityType());
+    $controller = \Drupal::entityManager()->getStorageController($entity->entityTypeId());
     $controller->resetCache();
     $entities = $controller->loadMultiple();
     foreach ($entities as $index => $entity) {
@@ -267,7 +267,7 @@ function testFieldAttachDelete() {
     $entity->setNewRevision();
     $entity->save();
     $vids[] = $entity->getRevisionId();
-    $controller = $this->container->get('entity.manager')->getStorageController($entity->entityType());
+    $controller = $this->container->get('entity.manager')->getStorageController($entity->entityTypeId());
     $controller->resetCache();
 
     // Confirm each revision loads
@@ -334,7 +334,7 @@ function testEntityCreateRenameBundle() {
     $this->assertIdentical($this->instance->bundle, $new_bundle, "Bundle name has been updated in the instance.");
 
     // Verify the field data is present on load.
-    $controller = $this->container->get('entity.manager')->getStorageController($entity->entityType());
+    $controller = $this->container->get('entity.manager')->getStorageController($entity->entityTypeId());
     $controller->resetCache();
     $entity = $controller->load($entity->id());
     $this->assertEqual(count($entity->{$this->field_name}), $cardinality, "Bundle name has been updated in the field storage");
@@ -389,7 +389,7 @@ function testEntityDeleteBundle() {
     entity_test_delete_bundle($this->instance->bundle, $entity_type);
 
     // Verify no data gets loaded
-    $controller = $this->container->get('entity.manager')->getStorageController($entity->entityType());
+    $controller = $this->container->get('entity.manager')->getStorageController($entity->entityTypeId());
     $controller->resetCache();
     $entity= $controller->load($entity->id());
 
diff --git a/core/modules/field/lib/Drupal/field/Tests/FieldTestBase.php b/core/modules/field/lib/Drupal/field/Tests/FieldTestBase.php
index b871eb2..64fe956 100644
--- a/core/modules/field/lib/Drupal/field/Tests/FieldTestBase.php
+++ b/core/modules/field/lib/Drupal/field/Tests/FieldTestBase.php
@@ -52,8 +52,8 @@ function _generateTestFieldValues($cardinality) {
    */
   function assertFieldValues(EntityInterface $entity, $field_name, $expected_values, $langcode = Language::LANGCODE_NOT_SPECIFIED, $column = 'value') {
     // Re-load the entity to make sure we have the latest changes.
-    entity_get_controller($entity->entityType())->resetCache(array($entity->id()));
-    $e = entity_load($entity->entityType(), $entity->id());
+    entity_get_controller($entity->entityTypeId())->resetCache(array($entity->id()));
+    $e = entity_load($entity->entityTypeId(), $entity->id());
     $field = $values = $e->getTranslation($langcode)->$field_name;
     // Filter out empty values so that they don't mess with the assertions.
     $field->filterEmptyValues();
diff --git a/core/modules/field/lib/Drupal/field/Tests/FieldUnitTestBase.php b/core/modules/field/lib/Drupal/field/Tests/FieldUnitTestBase.php
index d9a776b..4eb5702a 100644
--- a/core/modules/field/lib/Drupal/field/Tests/FieldUnitTestBase.php
+++ b/core/modules/field/lib/Drupal/field/Tests/FieldUnitTestBase.php
@@ -109,7 +109,7 @@ function createFieldWithInstance($suffix = '', $entity_type = 'entity_test', $bu
    */
   protected function entitySaveReload(EntityInterface $entity) {
     $entity->save();
-    $controller = $this->container->get('entity.manager')->getStorageController($entity->entityType());
+    $controller = $this->container->get('entity.manager')->getStorageController($entity->entityTypeId());
     $controller->resetCache();
     return $controller->load($entity->id());
   }
@@ -150,8 +150,8 @@ function _generateTestFieldValues($cardinality) {
    */
   function assertFieldValues(EntityInterface $entity, $field_name, $expected_values, $langcode = Language::LANGCODE_NOT_SPECIFIED, $column = 'value') {
     // Re-load the entity to make sure we have the latest changes.
-    entity_get_controller($entity->entityType())->resetCache(array($entity->id()));
-    $e = entity_load($entity->entityType(), $entity->id());
+    entity_get_controller($entity->entityTypeId())->resetCache(array($entity->id()));
+    $e = entity_load($entity->entityTypeId(), $entity->id());
     $field = $values = $e->getTranslation($langcode)->$field_name;
     // Filter out empty values so that they don't mess with the assertions.
     $field->filterEmptyValues();
diff --git a/core/modules/field/tests/modules/field_test/field_test.entity.inc b/core/modules/field/tests/modules/field_test/field_test.entity.inc
index af6482d..632e2d9 100644
--- a/core/modules/field/tests/modules/field_test/field_test.entity.inc
+++ b/core/modules/field/tests/modules/field_test/field_test.entity.inc
@@ -1,4 +1,5 @@
 <?php
+use Drupal\Core\Entity\EntityInterface;
 
 /**
  * @file
@@ -44,7 +45,7 @@ function field_test_entity_info_translatable($entity_type = NULL, $translatable
  *
  * @deprecated Use \Drupal\field_test\Form\FieldTestForm::testEntityNestedForm()
  */
-function field_test_entity_nested_form($form, &$form_state, $entity_1, $entity_2) {
+function field_test_entity_nested_form($form, &$form_state, EntityInterface $entity_1, EntityInterface $entity_2) {
   // First entity.
   foreach (array('id', 'type') as $key) {
     $form[$key] = array(
@@ -52,7 +53,7 @@ function field_test_entity_nested_form($form, &$form_state, $entity_1, $entity_2
       '#value' => $entity_1->$key->value,
     );
   }
-  $form_state['form_display'] = entity_get_form_display($entity_1->entityType(), $entity_1->bundle(), 'default');
+  $form_state['form_display'] = entity_get_form_display($entity_1->entityTypeId(), $entity_1->bundle(), 'default');
   field_attach_form($entity_1, $form, $form_state);
 
   // Second entity.
@@ -69,7 +70,7 @@ function field_test_entity_nested_form($form, &$form_state, $entity_1, $entity_2
       '#value' => $entity_2->$key->value,
     );
   }
-  $form_state['form_display'] = entity_get_form_display($entity_1->entityType(), $entity_1->bundle(), 'default');
+  $form_state['form_display'] = entity_get_form_display($entity_1->entityTypeId(), $entity_1->bundle(), 'default');
   field_attach_form($entity_2, $form['entity_2'], $form_state);
 
   $form['save'] = array(
diff --git a/core/modules/field_ui/field_ui.module b/core/modules/field_ui/field_ui.module
index cdcc9be..6de3a1b 100644
--- a/core/modules/field_ui/field_ui.module
+++ b/core/modules/field_ui/field_ui.module
@@ -165,7 +165,7 @@ function field_ui_form_node_type_form_alter(&$form, $form_state) {
  * Implements hook_entity_operation_alter().
  */
 function field_ui_entity_operation_alter(array &$operations, EntityInterface $entity) {
-  $info = $entity->entityInfo();
+  $info = $entity->entityType();
   // Add manage fields and display links if this entity type is the bundle
   // of another.
   if ($bundle_of = $info->getBundleOf()) {
diff --git a/core/modules/field_ui/lib/Drupal/field_ui/DisplayOverviewBase.php b/core/modules/field_ui/lib/Drupal/field_ui/DisplayOverviewBase.php
index 3a9b442..e2edf8d 100644
--- a/core/modules/field_ui/lib/Drupal/field_ui/DisplayOverviewBase.php
+++ b/core/modules/field_ui/lib/Drupal/field_ui/DisplayOverviewBase.php
@@ -533,7 +533,7 @@ public function submitForm(array &$form, array &$form_state) {
           // If no display exists for the newly enabled view mode, initialize
           // it with those from the 'default' view mode, which were used so
           // far.
-          if (!entity_load($this->getEntityDisplay('default')->entityType(), $this->entity_type . '.' . $this->bundle . '.' . $mode)) {
+          if (!entity_load($this->getEntityDisplay('default')->entityTypeId(), $this->entity_type . '.' . $this->bundle . '.' . $mode)) {
             $display = $this->getEntityDisplay('default')->createCopy($mode);
             $display->save();
           }
diff --git a/core/modules/file/file.api.php b/core/modules/file/file.api.php
index ebc32ac..df95b33 100644
--- a/core/modules/file/file.api.php
+++ b/core/modules/file/file.api.php
@@ -219,7 +219,7 @@ function hook_file_delete(Drupal\file\FileInterface $file) {
  * @see hook_entity_field_access().
  */
 function hook_file_download_access($field, Drupal\Core\Entity\EntityInterface $entity, Drupal\file\FileInterface $file) {
-  if ($entity->entityType() == 'node') {
+  if ($entity->entityTypeId() == 'node') {
     return $entity->access('view');
   }
 }
diff --git a/core/modules/file/lib/Drupal/file/Plugin/Field/FieldType/FileFieldItemList.php b/core/modules/file/lib/Drupal/file/Plugin/Field/FieldType/FileFieldItemList.php
index 2b750b0..c433445 100644
--- a/core/modules/file/lib/Drupal/file/Plugin/Field/FieldType/FileFieldItemList.php
+++ b/core/modules/file/lib/Drupal/file/Plugin/Field/FieldType/FileFieldItemList.php
@@ -28,7 +28,7 @@ public function insert() {
 
     // Add a new usage for newly uploaded files.
     foreach ($this->targetEntities() as $file) {
-      \Drupal::service('file.usage')->add($file, 'file', $entity->entityType(), $entity->id());
+      \Drupal::service('file.usage')->add($file, 'file', $entity->entityTypeId(), $entity->id());
     }
   }
 
@@ -47,7 +47,7 @@ public function update() {
     // deletion of previous file usages are necessary.
     if (!empty($entity->original) && $entity->getRevisionId() != $entity->original->getRevisionId()) {
       foreach ($files as $file) {
-        \Drupal::service('file.usage')->add($file, 'file', $entity->entityType(), $entity->id());
+        \Drupal::service('file.usage')->add($file, 'file', $entity->entityTypeId(), $entity->id());
       }
       return;
     }
@@ -64,13 +64,13 @@ public function update() {
     $removed_fids = array_filter(array_diff($original_fids, $fids));
     $removed_files = \Drupal::entityManager()->getStorageController('file')->loadMultiple($removed_fids);
     foreach ($removed_files as $file) {
-      \Drupal::service('file.usage')->delete($file, 'file', $entity->entityType(), $entity->id());
+      \Drupal::service('file.usage')->delete($file, 'file', $entity->entityTypeId(), $entity->id());
     }
 
     // Add new usage entries for newly added files.
     foreach ($files as $fid => $file) {
       if (!in_array($fid, $original_fids)) {
-        \Drupal::service('file.usage')->add($file, 'file', $entity->entityType(), $entity->id());
+        \Drupal::service('file.usage')->add($file, 'file', $entity->entityTypeId(), $entity->id());
       }
     }
   }
@@ -84,7 +84,7 @@ public function delete() {
 
     // Delete all file usages within this entity.
     foreach ($this->targetEntities() as $file) {
-      \Drupal::service('file.usage')->delete($file, 'file', $entity->entityType(), $entity->id(), 0);
+      \Drupal::service('file.usage')->delete($file, 'file', $entity->entityTypeId(), $entity->id(), 0);
     }
   }
 
@@ -97,7 +97,7 @@ public function deleteRevision() {
 
     // Decrement the file usage by 1.
     foreach ($this->targetEntities() as $file) {
-      \Drupal::service('file.usage')->delete($file, 'file', $entity->entityType(), $entity->id());
+      \Drupal::service('file.usage')->delete($file, 'file', $entity->entityTypeId(), $entity->id());
     }
   }
 
diff --git a/core/modules/file/tests/file_module_test/file_module_test.module b/core/modules/file/tests/file_module_test/file_module_test.module
index abb1618..1ba985d 100644
--- a/core/modules/file/tests/file_module_test/file_module_test.module
+++ b/core/modules/file/tests/file_module_test/file_module_test.module
@@ -75,7 +75,7 @@ function file_module_test_form_submit($form, &$form_state) {
  * Implements hook_file_download_access().
  */
 function file_module_test_file_download_access(FieldInterface $field, EntityInterface $entity, File $file) {
-  $instance = field_info_instance($entity->entityType(), $field->getName(), $entity->bundle());
+  $instance = field_info_instance($entity->entityTypeId(), $field->getName(), $entity->bundle());
   // Allow the file to be downloaded only if the given arguments are correct.
   // If any are wrong, $instance will be NULL.
   if (empty($instance)) {
diff --git a/core/modules/hal/lib/Drupal/hal/Normalizer/EntityNormalizer.php b/core/modules/hal/lib/Drupal/hal/Normalizer/EntityNormalizer.php
index a3aa448..4a2979b 100644
--- a/core/modules/hal/lib/Drupal/hal/Normalizer/EntityNormalizer.php
+++ b/core/modules/hal/lib/Drupal/hal/Normalizer/EntityNormalizer.php
@@ -29,13 +29,14 @@ class EntityNormalizer extends NormalizerBase {
    */
   public function normalize($entity, $format = NULL, array $context = array()) {
     // Create the array of normalized properties, starting with the URI.
+    /** @var $entity \Drupal\Core\Entity\ContentEntityInterface */
     $normalized = array(
       '_links' => array(
         'self' => array(
           'href' => $this->getEntityUri($entity),
         ),
         'type' => array(
-          'href' => $this->linkManager->getTypeUri($entity->entityType(), $entity->bundle()),
+          'href' => $this->linkManager->getTypeUri($entity->entityTypeId(), $entity->bundle()),
         ),
       ),
     );
@@ -43,6 +44,7 @@ public function normalize($entity, $format = NULL, array $context = array()) {
     // If the properties to use were specified, only output those properties.
     // Otherwise, output all properties except internal ID.
     if (isset($context['included_fields'])) {
+      $properties = array();
       foreach ($context['included_fields'] as $property_name) {
         $properties[] = $entity->get($property_name);
       }
diff --git a/core/modules/hal/lib/Drupal/hal/Normalizer/EntityReferenceItemNormalizer.php b/core/modules/hal/lib/Drupal/hal/Normalizer/EntityReferenceItemNormalizer.php
index c615933..5a87406 100644
--- a/core/modules/hal/lib/Drupal/hal/Normalizer/EntityReferenceItemNormalizer.php
+++ b/core/modules/hal/lib/Drupal/hal/Normalizer/EntityReferenceItemNormalizer.php
@@ -25,6 +25,7 @@ class EntityReferenceItemNormalizer extends FieldItemNormalizer implements UuidR
    * Implements \Symfony\Component\Serializer\Normalizer\NormalizerInterface::normalize()
    */
   public function normalize($field_item, $format = NULL, array $context = array()) {
+    /** @var $field_item \Drupal\Core\Field\FieldItemInterface */
     $target_entity = $field_item->get('entity')->getValue();
 
     // If the parent entity passed in a langcode, unset it before normalizing
@@ -48,7 +49,7 @@ public function normalize($field_item, $format = NULL, array $context = array())
     // objects.
     $field_name = $field_item->getParent()->getName();
     $entity = $field_item->getEntity();
-    $field_uri = $this->linkManager->getRelationUri($entity->entityType(), $entity->bundle(), $field_name);
+    $field_uri = $this->linkManager->getRelationUri($entity->entityTypeId(), $entity->bundle(), $field_name);
     return array(
       '_links' => array(
         $field_uri => array($link),
diff --git a/core/modules/language/language.api.php b/core/modules/language/language.api.php
index d0a31c4..f22106f 100644
--- a/core/modules/language/language.api.php
+++ b/core/modules/language/language.api.php
@@ -86,7 +86,7 @@ function hook_language_fallback_candidates_alter(array &$candidates, array $cont
 function hook_language_fallback_candidates_OPERATION_alter(array &$candidates, array $context) {
   // We know that the current OPERATION deals with entities so no need to check
   // here.
-  if ($context['data']->entityType() == 'node') {
+  if ($context['data']->entityTypeId() == 'node') {
     $candidates = array_reverse($candidates);
   }
 }
diff --git a/core/modules/link/lib/Drupal/link/Plugin/Field/FieldFormatter/LinkFormatter.php b/core/modules/link/lib/Drupal/link/Plugin/Field/FieldFormatter/LinkFormatter.php
index ef8db96..59d94c4 100644
--- a/core/modules/link/lib/Drupal/link/Plugin/Field/FieldFormatter/LinkFormatter.php
+++ b/core/modules/link/lib/Drupal/link/Plugin/Field/FieldFormatter/LinkFormatter.php
@@ -127,7 +127,7 @@ public function viewElements(FieldItemListInterface $items) {
       if (empty($settings['url_only']) && !empty($item->title)) {
         // Unsanitizied token replacement here because $options['html'] is FALSE
         // by default in l().
-        $link_title = \Drupal::token()->replace($item->title, array($entity->entityType() => $entity), array('sanitize' => FALSE, 'clear' => TRUE));
+        $link_title = \Drupal::token()->replace($item->title, array($entity->entityTypeId() => $entity), array('sanitize' => FALSE, 'clear' => TRUE));
       }
 
       // Trim the link text to the desired length.
diff --git a/core/modules/link/lib/Drupal/link/Plugin/Field/FieldFormatter/LinkSeparateFormatter.php b/core/modules/link/lib/Drupal/link/Plugin/Field/FieldFormatter/LinkSeparateFormatter.php
index f1f9d64..a15f502 100644
--- a/core/modules/link/lib/Drupal/link/Plugin/Field/FieldFormatter/LinkSeparateFormatter.php
+++ b/core/modules/link/lib/Drupal/link/Plugin/Field/FieldFormatter/LinkSeparateFormatter.php
@@ -48,7 +48,7 @@ public function viewElements(FieldItemListInterface $items) {
       if (empty($settings['url_only']) && !empty($item->title)) {
         // Unsanitized token replacement here because $options['html'] is FALSE
         // by default in l().
-        $link_title = \Drupal::token()->replace($item->title, array($entity->entityType() => $entity), array('sanitize' => FALSE, 'clear' => TRUE));
+        $link_title = \Drupal::token()->replace($item->title, array($entity->entityTypeId() => $entity), array('sanitize' => FALSE, 'clear' => TRUE));
       }
 
       // The link_separate formatter has two titles; the link text (as in the
diff --git a/core/modules/link/lib/Drupal/link/Tests/LinkFieldTest.php b/core/modules/link/lib/Drupal/link/Tests/LinkFieldTest.php
index e71beac..4533736 100644
--- a/core/modules/link/lib/Drupal/link/Tests/LinkFieldTest.php
+++ b/core/modules/link/lib/Drupal/link/Tests/LinkFieldTest.php
@@ -515,7 +515,7 @@ protected function renderTestEntity($id, $view_mode = 'full', $reset = TRUE) {
       $this->container->get('entity.manager')->getStorageController('entity_test')->resetCache(array($id));
     }
     $entity = entity_load('entity_test', $id);
-    $display = entity_get_display($entity->entityType(), $entity->bundle(), $view_mode);
+    $display = entity_get_display($entity->entityTypeId(), $entity->bundle(), $view_mode);
     field_attach_prepare_view('entity_test', array($entity->id() => $entity), array($entity->bundle() => $display));
     $entity->content = field_attach_view($entity, $display);
 
diff --git a/core/modules/menu_link/lib/Drupal/menu_link/Entity/MenuLink.php b/core/modules/menu_link/lib/Drupal/menu_link/Entity/MenuLink.php
index 638f47f..f38de3d 100644
--- a/core/modules/menu_link/lib/Drupal/menu_link/Entity/MenuLink.php
+++ b/core/modules/menu_link/lib/Drupal/menu_link/Entity/MenuLink.php
@@ -289,7 +289,7 @@ public function setNewRevision($value = TRUE) {
    * {@inheritdoc}
    */
   public function isNewRevision() {
-    return $this->newRevision || ($this->entityInfo()->hasKey('revision') && !$this->getRevisionId());
+    return $this->newRevision || ($this->entityType()->hasKey('revision') && !$this->getRevisionId());
   }
 
   /**
diff --git a/core/modules/menu_link/lib/Drupal/menu_link/MenuLinkFormController.php b/core/modules/menu_link/lib/Drupal/menu_link/MenuLinkFormController.php
index bc2c71d..97f8f37 100644
--- a/core/modules/menu_link/lib/Drupal/menu_link/MenuLinkFormController.php
+++ b/core/modules/menu_link/lib/Drupal/menu_link/MenuLinkFormController.php
@@ -262,7 +262,7 @@ public function buildEntity(array $form, array &$form_state) {
     // Invoke all specified builders for copying form values to entity properties.
     if (isset($form['#entity_builders'])) {
       foreach ($form['#entity_builders'] as $function) {
-        call_user_func_array($function, array($entity->entityType(), $entity, &$form, &$form_state));
+        call_user_func_array($function, array($entity->entityTypeId(), $entity, &$form, &$form_state));
       }
     }
 
diff --git a/core/modules/node/node.module b/core/modules/node/node.module
index f0c7e2c..7b1183c 100644
--- a/core/modules/node/node.module
+++ b/core/modules/node/node.module
@@ -1965,7 +1965,7 @@ function node_modules_uninstalled($modules) {
  * Implements hook_file_download_access().
  */
 function node_file_download_access($field, EntityInterface $entity, File $file) {
-  if ($entity->entityType() == 'node') {
+  if ($entity->entityTypeId() == 'node') {
     return $entity->access('view');
   }
 }
diff --git a/core/modules/options/options.module b/core/modules/options/options.module
index 44ce6b7..ed96b94 100644
--- a/core/modules/options/options.module
+++ b/core/modules/options/options.module
@@ -243,7 +243,7 @@ function options_field_entity_delete(FieldInterface $field) {
 function options_allowed_values(FieldDefinitionInterface $field_definition, EntityInterface $entity) {
   $allowed_values = &drupal_static(__FUNCTION__, array());
 
-  $cache_id = implode(':', array($entity->entityType(), $entity->bundle(), $field_definition->getName()));
+  $cache_id = implode(':', array($entity->entityTypeId(), $entity->bundle(), $field_definition->getName()));
   if (!isset($allowed_values[$cache_id])) {
     $function = $field_definition->getSetting('allowed_values_function');
     // If $cacheable is FALSE, then the allowed values are not statically
diff --git a/core/modules/rest/lib/Drupal/rest/Plugin/rest/resource/EntityResource.php b/core/modules/rest/lib/Drupal/rest/Plugin/rest/resource/EntityResource.php
index ae90d74..dddbbca 100644
--- a/core/modules/rest/lib/Drupal/rest/Plugin/rest/resource/EntityResource.php
+++ b/core/modules/rest/lib/Drupal/rest/Plugin/rest/resource/EntityResource.php
@@ -80,7 +80,7 @@ public function post($id, EntityInterface $entity = NULL) {
     $definition = $this->getPluginDefinition();
     // Verify that the deserialized entity is of the type that we expect to
     // prevent security issues.
-    if ($entity->entityType() != $definition['entity_type']) {
+    if ($entity->entityTypeId() != $definition['entity_type']) {
       throw new BadRequestHttpException(t('Invalid entity type'));
     }
     // POSTed entities must not have an ID set, because we always want to create
@@ -98,7 +98,7 @@ public function post($id, EntityInterface $entity = NULL) {
     $this->validate($entity);
     try {
       $entity->save();
-      watchdog('rest', 'Created entity %type with ID %id.', array('%type' => $entity->entityType(), '%id' => $entity->id()));
+      watchdog('rest', 'Created entity %type with ID %id.', array('%type' => $entity->entityTypeId(), '%id' => $entity->id()));
 
       $url = url(strtr($this->pluginId, ':', '/') . '/' . $entity->id(), array('absolute' => TRUE));
       // 201 Created responses have an empty body.
@@ -131,7 +131,7 @@ public function patch($id, EntityInterface $entity = NULL) {
       throw new NotFoundHttpException();
     }
     $definition = $this->getPluginDefinition();
-    if ($entity->entityType() != $definition['entity_type']) {
+    if ($entity->entityTypeId() != $definition['entity_type']) {
       throw new BadRequestHttpException(t('Invalid entity type'));
     }
     $original_entity = entity_load($definition['entity_type'], $id);
@@ -161,7 +161,7 @@ public function patch($id, EntityInterface $entity = NULL) {
     $this->validate($original_entity);
     try {
       $original_entity->save();
-      watchdog('rest', 'Updated entity %type with ID %id.', array('%type' => $entity->entityType(), '%id' => $entity->id()));
+      watchdog('rest', 'Updated entity %type with ID %id.', array('%type' => $entity->entityTypeId(), '%id' => $entity->id()));
 
       // Update responses have an empty body.
       return new ResourceResponse(NULL, 204);
@@ -191,7 +191,7 @@ public function delete($id) {
       }
       try {
         $entity->delete();
-        watchdog('rest', 'Deleted entity %type with ID %id.', array('%type' => $entity->entityType(), '%id' => $entity->id()));
+        watchdog('rest', 'Deleted entity %type with ID %id.', array('%type' => $entity->entityTypeId(), '%id' => $entity->id()));
 
         // Delete responses have an empty body.
         return new ResourceResponse(NULL, 204);
diff --git a/core/modules/search/lib/Drupal/search/SearchPageRepository.php b/core/modules/search/lib/Drupal/search/SearchPageRepository.php
index e2af5ff..ada6b3b 100644
--- a/core/modules/search/lib/Drupal/search/SearchPageRepository.php
+++ b/core/modules/search/lib/Drupal/search/SearchPageRepository.php
@@ -109,7 +109,7 @@ public function setDefaultSearchPage(SearchPageInterface $search_page) {
    * {@inheritdoc}
    */
   public function sortSearchPages($search_pages) {
-    $entity_info = $this->storage->entityInfo();
+    $entity_info = $this->storage->entityType();
     uasort($search_pages, array($entity_info->getClass(), 'sort'));
     return $search_pages;
   }
diff --git a/core/modules/search/tests/Drupal/search/Tests/SearchPageRepositoryTest.php b/core/modules/search/tests/Drupal/search/Tests/SearchPageRepositoryTest.php
index b054b71..2b140f5 100644
--- a/core/modules/search/tests/Drupal/search/Tests/SearchPageRepositoryTest.php
+++ b/core/modules/search/tests/Drupal/search/Tests/SearchPageRepositoryTest.php
@@ -272,7 +272,7 @@ public function testSortSearchPages() {
       ->method('getClass')
       ->will($this->returnValue('Drupal\search\Tests\TestSearchPage'));
     $this->storage->expects($this->once())
-      ->method('entityInfo')
+      ->method('entityType')
       ->will($this->returnValue($entity_type));
 
     // Declare entities out of their expected order so we can be sure they were
diff --git a/core/modules/system/entity.api.php b/core/modules/system/entity.api.php
index 3eb29dd..6fba817 100644
--- a/core/modules/system/entity.api.php
+++ b/core/modules/system/entity.api.php
@@ -300,7 +300,7 @@ function hook_entity_insert(Drupal\Core\Entity\EntityInterface $entity) {
   // Insert the new entity into a fictional table of all entities.
   db_insert('example_entity')
     ->fields(array(
-      'type' => $entity->entityType(),
+      'type' => $entity->entityTypeId(),
       'id' => $entity->id(),
       'created' => REQUEST_TIME,
       'updated' => REQUEST_TIME,
@@ -323,7 +323,7 @@ function hook_entity_update(Drupal\Core\Entity\EntityInterface $entity) {
     ->fields(array(
       'updated' => REQUEST_TIME,
     ))
-    ->condition('type', $entity->entityType())
+    ->condition('type', $entity->entityTypeId())
     ->condition('id', $entity->id())
     ->execute();
 }
@@ -372,7 +372,7 @@ function hook_entity_predelete(Drupal\Core\Entity\EntityInterface $entity) {
   // Count references to this entity in a custom table before they are removed
   // upon entity deletion.
   $id = $entity->id();
-  $type = $entity->entityType();
+  $type = $entity->entityTypeId();
   $count = db_select('example_entity_data')
     ->condition('type', $type)
     ->condition('id', $id)
@@ -400,7 +400,7 @@ function hook_entity_predelete(Drupal\Core\Entity\EntityInterface $entity) {
 function hook_entity_delete(Drupal\Core\Entity\EntityInterface $entity) {
   // Delete the entity's entry from a fictional table of all entities.
   db_delete('example_entity')
-    ->condition('type', $entity->entityType())
+    ->condition('type', $entity->entityTypeId())
     ->condition('id', $entity->id())
     ->execute();
 }
@@ -554,7 +554,7 @@ function hook_entity_prepare_view($entity_type, array $entities, array $displays
  */
 function hook_entity_view_mode_alter(&$view_mode, Drupal\Core\Entity\EntityInterface $entity, $context) {
   // For nodes, change the view mode when it is teaser.
-  if ($entity->entityType() == 'node' && $view_mode == 'teaser') {
+  if ($entity->entityTypeId() == 'node' && $view_mode == 'teaser') {
     $view_mode = 'my_custom_view_mode';
   }
 }
diff --git a/core/modules/system/lib/Drupal/system/Form/DateFormatFormBase.php b/core/modules/system/lib/Drupal/system/Form/DateFormatFormBase.php
index bdce06b..8a629b3 100644
--- a/core/modules/system/lib/Drupal/system/Form/DateFormatFormBase.php
+++ b/core/modules/system/lib/Drupal/system/Form/DateFormatFormBase.php
@@ -95,7 +95,7 @@ public static function create(ContainerInterface $container) {
    */
   public function exists($entity_id, array $element,  array $form_state) {
     return (bool) $this->queryFactory
-      ->get($this->entity->entityType())
+      ->get($this->entity->entityTypeId())
       ->condition('id', $element['#field_prefix'] . $entity_id)
       ->execute();
   }
diff --git a/core/modules/system/lib/Drupal/system/Tests/Entity/EntityTranslationTest.php b/core/modules/system/lib/Drupal/system/Tests/Entity/EntityTranslationTest.php
index a084ebf..238b137 100644
--- a/core/modules/system/lib/Drupal/system/Tests/Entity/EntityTranslationTest.php
+++ b/core/modules/system/lib/Drupal/system/Tests/Entity/EntityTranslationTest.php
@@ -432,7 +432,7 @@ function testEntityTranslationAPI() {
 
     // Check that per-language defaults are properly populated.
     $entity = $this->reloadEntity($entity);
-    $instance_id = implode('.', array($entity->entityType(), $entity->bundle(), $this->field_name));
+    $instance_id = implode('.', array($entity->entityTypeId(), $entity->bundle(), $this->field_name));
     $instance = $this->entityManager->getStorageController('field_instance')->load($instance_id);
     $instance->default_value_function = 'entity_test_field_default_value';
     $instance->save();
diff --git a/core/modules/system/lib/Drupal/system/Tests/Entity/EntityUnitTestBase.php b/core/modules/system/lib/Drupal/system/Tests/Entity/EntityUnitTestBase.php
index ccf6070..228921a 100644
--- a/core/modules/system/lib/Drupal/system/Tests/Entity/EntityUnitTestBase.php
+++ b/core/modules/system/lib/Drupal/system/Tests/Entity/EntityUnitTestBase.php
@@ -91,7 +91,7 @@ protected function createUser($values = array(), $permissions = array()) {
    *   The reloaded entity.
    */
   protected function reloadEntity(EntityInterface $entity) {
-    $controller = $this->entityManager->getStorageController($entity->entityType());
+    $controller = $this->entityManager->getStorageController($entity->entityTypeId());
     $controller->resetCache(array($entity->id()));
     return $controller->load($entity->id());
   }
diff --git a/core/modules/system/lib/Drupal/system/Tests/Entity/FieldTranslationSqlStorageTest.php b/core/modules/system/lib/Drupal/system/Tests/Entity/FieldTranslationSqlStorageTest.php
index b6790aa..fe1dc19 100644
--- a/core/modules/system/lib/Drupal/system/Tests/Entity/FieldTranslationSqlStorageTest.php
+++ b/core/modules/system/lib/Drupal/system/Tests/Entity/FieldTranslationSqlStorageTest.php
@@ -85,7 +85,7 @@ public function testFieldSqlStorage() {
    */
   protected function assertFieldStorageLangcode(ContentEntityInterface $entity, $message = '') {
     $status = TRUE;
-    $entity_type = $entity->entityType();
+    $entity_type = $entity->entityTypeId();
     $id = $entity->id();
     $langcode = $entity->getUntranslated()->language()->id;
     $fields = array($this->field_name, $this->untranslatable_field_name);
diff --git a/core/modules/system/tests/modules/entity_crud_hook_test/entity_crud_hook_test.module b/core/modules/system/tests/modules/entity_crud_hook_test/entity_crud_hook_test.module
index 9ee487a..795f235 100644
--- a/core/modules/system/tests/modules/entity_crud_hook_test/entity_crud_hook_test.module
+++ b/core/modules/system/tests/modules/entity_crud_hook_test/entity_crud_hook_test.module
@@ -11,7 +11,7 @@
  * Implements hook_entity_create().
  */
 function entity_crud_hook_test_entity_create(EntityInterface $entity) {
-  $_SESSION['entity_crud_hook_test'][] = (__FUNCTION__ . ' called for type ' . $entity->entityType());
+  $_SESSION['entity_crud_hook_test'][] = (__FUNCTION__ . ' called for type ' . $entity->entityTypeId());
 }
 
 /**
@@ -67,7 +67,7 @@ function entity_crud_hook_test_user_create() {
  * Implements hook_entity_presave().
  */
 function entity_crud_hook_test_entity_presave(EntityInterface $entity) {
-  $_SESSION['entity_crud_hook_test'][] = (__FUNCTION__ . ' called for type ' . $entity->entityType());
+  $_SESSION['entity_crud_hook_test'][] = (__FUNCTION__ . ' called for type ' . $entity->entityTypeId());
 }
 
 /**
@@ -123,7 +123,7 @@ function entity_crud_hook_test_user_presave() {
  * Implements hook_entity_insert().
  */
 function entity_crud_hook_test_entity_insert(EntityInterface $entity) {
-  $_SESSION['entity_crud_hook_test'][] = (__FUNCTION__ . ' called for type ' . $entity->entityType());
+  $_SESSION['entity_crud_hook_test'][] = (__FUNCTION__ . ' called for type ' . $entity->entityTypeId());
 }
 
 /**
@@ -235,7 +235,7 @@ function entity_crud_hook_test_user_load() {
  * Implements hook_entity_update().
  */
 function entity_crud_hook_test_entity_update(EntityInterface $entity) {
-  $_SESSION['entity_crud_hook_test'][] = (__FUNCTION__ . ' called for type ' . $entity->entityType());
+  $_SESSION['entity_crud_hook_test'][] = (__FUNCTION__ . ' called for type ' . $entity->entityTypeId());
 }
 
 /**
@@ -291,7 +291,7 @@ function entity_crud_hook_test_user_update() {
  * Implements hook_entity_predelete().
  */
 function entity_crud_hook_test_entity_predelete(EntityInterface $entity) {
-  $_SESSION['entity_crud_hook_test'][] = (__FUNCTION__ . ' called for type ' . $entity->entityType());
+  $_SESSION['entity_crud_hook_test'][] = (__FUNCTION__ . ' called for type ' . $entity->entityTypeId());
 }
 
 /**
@@ -347,7 +347,7 @@ function entity_crud_hook_test_user_predelete() {
  * Implements hook_entity_delete().
  */
 function entity_crud_hook_test_entity_delete(EntityInterface $entity) {
-  $_SESSION['entity_crud_hook_test'][] = (__FUNCTION__ . ' called for type ' . $entity->entityType());
+  $_SESSION['entity_crud_hook_test'][] = (__FUNCTION__ . ' called for type ' . $entity->entityTypeId());
 }
 
 /**
diff --git a/core/modules/system/tests/modules/entity_test/lib/Drupal/entity_test/Entity/EntityTest.php b/core/modules/system/tests/modules/entity_test/lib/Drupal/entity_test/Entity/EntityTest.php
index 9798c4f..79669d4 100644
--- a/core/modules/system/tests/modules/entity_test/lib/Drupal/entity_test/Entity/EntityTest.php
+++ b/core/modules/system/tests/modules/entity_test/lib/Drupal/entity_test/Entity/EntityTest.php
@@ -100,7 +100,7 @@ protected function init() {
   public static function preCreate(EntityStorageControllerInterface $storage_controller, array &$values) {
     parent::preCreate($storage_controller, $values);
     if (empty($values['type'])) {
-      $values['type'] = $storage_controller->entityType();
+      $values['type'] = $storage_controller->entityTypeId();
     }
   }
 
@@ -108,7 +108,7 @@ public static function preCreate(EntityStorageControllerInterface $storage_contr
    * Overrides Drupal\entity\Entity::label().
    */
   public function label() {
-    $info = $this->entityInfo();
+    $info = $this->entityType();
     if (!isset($langcode)) {
       $langcode = $this->activeLangcode;
     }
diff --git a/core/modules/system/tests/modules/entity_test/lib/Drupal/entity_test/EntityTestFormController.php b/core/modules/system/tests/modules/entity_test/lib/Drupal/entity_test/EntityTestFormController.php
index 89fe5ac..0df1360 100644
--- a/core/modules/system/tests/modules/entity_test/lib/Drupal/entity_test/EntityTestFormController.php
+++ b/core/modules/system/tests/modules/entity_test/lib/Drupal/entity_test/EntityTestFormController.php
@@ -49,7 +49,7 @@ public function form(array $form, array &$form_state) {
     );
 
     // @todo: Is there a better way to check if an entity type is revisionable?
-    $entity_info = $entity->entityInfo();
+    $entity_info = $entity->entityType();
     if ($entity_info->hasKey('revision') && !$entity->isNew()) {
       $form['revision'] = array(
         '#type' => 'checkbox',
@@ -85,15 +85,15 @@ public function save(array $form, array &$form_state) {
     $entity->save();
 
     if ($is_new) {
-     $message = t('%entity_type @id has been created.', array('@id' => $entity->id(), '%entity_type' => $entity->entityType()));
+     $message = t('%entity_type @id has been created.', array('@id' => $entity->id(), '%entity_type' => $entity->entityTypeId()));
     }
     else {
-      $message = t('%entity_type @id has been updated.', array('@id' => $entity->id(), '%entity_type' => $entity->entityType()));
+      $message = t('%entity_type @id has been updated.', array('@id' => $entity->id(), '%entity_type' => $entity->entityTypeId()));
     }
     drupal_set_message($message);
 
     if ($entity->id()) {
-      $entity_type = $entity->entityType();
+      $entity_type = $entity->entityTypeId();
       $form_state['redirect_route'] = array(
         'route_name' => "entity_test.edit_$entity_type",
         'route_parameters' => array(
@@ -114,7 +114,7 @@ public function save(array $form, array &$form_state) {
   public function delete(array $form, array &$form_state) {
     $entity = $this->entity;
     $entity->delete();
-    drupal_set_message(t('%entity_type @id has been deleted.', array('@id' => $entity->id(), '%entity_type' => $entity->entityType())));
+    drupal_set_message(t('%entity_type @id has been deleted.', array('@id' => $entity->id(), '%entity_type' => $entity->entityTypeId())));
     $form_state['redirect_route']['route_name'] = '<front>';
   }
 }
diff --git a/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/Field/FieldWidget/TaxonomyAutocompleteWidget.php b/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/Field/FieldWidget/TaxonomyAutocompleteWidget.php
index e8e446b..db5e2ef 100644
--- a/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/Field/FieldWidget/TaxonomyAutocompleteWidget.php
+++ b/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/Field/FieldWidget/TaxonomyAutocompleteWidget.php
@@ -73,7 +73,7 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
       '#default_value' => taxonomy_implode_tags($tags),
       '#autocomplete_route_name' => $this->getSetting('autocomplete_route_name'),
       '#autocomplete_route_parameters' => array(
-        'entity_type' => $items->getEntity()->entityType(),
+        'entity_type' => $items->getEntity()->entityTypeId(),
         'field_name' => $this->fieldDefinition->getName(),
       ),
       '#size' => $this->getSetting('size'),
diff --git a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermFieldMultipleVocabularyTest.php b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermFieldMultipleVocabularyTest.php
index 60c4661..9d0b0d7 100644
--- a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermFieldMultipleVocabularyTest.php
+++ b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermFieldMultipleVocabularyTest.php
@@ -101,7 +101,7 @@ function testTaxonomyTermFieldMultipleVocabularies() {
     // Render the entity.
     $entity = entity_load('entity_test', $id);
     $entities = array($id => $entity);
-    $display = entity_get_display($entity->entityType(), $entity->bundle(), 'full');
+    $display = entity_get_display($entity->entityTypeId(), $entity->bundle(), 'full');
     field_attach_prepare_view('entity_test', $entities, array($entity->bundle() => $display));
     $entity->content = field_attach_view($entity, $display);
     $this->content = drupal_render($entity->content);
@@ -114,7 +114,7 @@ function testTaxonomyTermFieldMultipleVocabularies() {
     // Re-render the content.
     $entity = entity_load('entity_test', $id);
     $entities = array($id => $entity);
-    $display = entity_get_display($entity->entityType(), $entity->bundle(), 'full');
+    $display = entity_get_display($entity->entityTypeId(), $entity->bundle(), 'full');
     field_attach_prepare_view('entity_test', $entities, array($entity->bundle() => $display));
     $entity->content = field_attach_view($entity, $display);
     $this->plainTextContent = FALSE;
diff --git a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermFieldTest.php b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermFieldTest.php
index 75ff535..ae38cde 100644
--- a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermFieldTest.php
+++ b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermFieldTest.php
@@ -118,7 +118,7 @@ function testTaxonomyTermFieldWidgets() {
     // Display the object.
     $entity = entity_load('entity_test', $id);
     $entities = array($id => $entity);
-    $display = entity_get_display($entity->entityType(), $entity->bundle(), 'full');
+    $display = entity_get_display($entity->entityTypeId(), $entity->bundle(), 'full');
     field_attach_prepare_view('entity_test', $entities, array($entity->bundle() => $display));
     $entity->content = field_attach_view($entity, $display);
     $this->content = drupal_render($entity->content);
diff --git a/core/modules/taxonomy/taxonomy.module b/core/modules/taxonomy/taxonomy.module
index e41b467..ce158f0 100644
--- a/core/modules/taxonomy/taxonomy.module
+++ b/core/modules/taxonomy/taxonomy.module
@@ -761,7 +761,7 @@ function taxonomy_term_load($tid) {
  * Implements hook_file_download_access().
  */
 function taxonomy_file_download_access($field, EntityInterface $entity, FileInterface $file) {
-  if ($entity->entityType() == 'taxonomy_term') {
+  if ($entity->entityTypeId() == 'taxonomy_term') {
     return $entity->access('view');
   }
 }
diff --git a/core/modules/text/lib/Drupal/text/Tests/TextFieldTest.php b/core/modules/text/lib/Drupal/text/Tests/TextFieldTest.php
index f209a44..252dbed 100644
--- a/core/modules/text/lib/Drupal/text/Tests/TextFieldTest.php
+++ b/core/modules/text/lib/Drupal/text/Tests/TextFieldTest.php
@@ -138,7 +138,7 @@ function _testTextfieldWidgets($field_type, $widget_type) {
 
     // Display the entity.
     $entity = entity_load('entity_test', $id);
-    $display = entity_get_display($entity->entityType(), $entity->bundle(), 'full');
+    $display = entity_get_display($entity->entityTypeId(), $entity->bundle(), 'full');
     $entity->content = field_attach_view($entity, $display);
     $this->drupalSetContent(drupal_render($entity->content));
     $this->assertText($value, 'Filtered tags are not displayed');
@@ -211,7 +211,7 @@ function _testTextfieldWidgetsFormatted($field_type, $widget_type) {
 
     // Display the entity.
     $entity = entity_load('entity_test', $id);
-    $display = entity_get_display($entity->entityType(), $entity->bundle(), 'full');
+    $display = entity_get_display($entity->entityTypeId(), $entity->bundle(), 'full');
     $entity->content = field_attach_view($entity, $display);
     $this->content = drupal_render($entity->content);
     $this->assertNoRaw($value, 'HTML tags are not displayed.');
@@ -253,7 +253,7 @@ function _testTextfieldWidgetsFormatted($field_type, $widget_type) {
     // Display the entity.
     $this->container->get('entity.manager')->getStorageController('entity_test')->resetCache(array($id));
     $entity = entity_load('entity_test', $id);
-    $display = entity_get_display($entity->entityType(), $entity->bundle(), 'full');
+    $display = entity_get_display($entity->entityTypeId(), $entity->bundle(), 'full');
     $entity->content = field_attach_view($entity, $display);
     $this->content = drupal_render($entity->content);
     $this->assertRaw($value, 'Value is displayed unfiltered');
diff --git a/core/modules/user/tests/Drupal/user/Tests/Views/Argument/RolesRidTest.php b/core/modules/user/tests/Drupal/user/Tests/Views/Argument/RolesRidTest.php
index 054d25a..a5c9226 100644
--- a/core/modules/user/tests/Drupal/user/Tests/Views/Argument/RolesRidTest.php
+++ b/core/modules/user/tests/Drupal/user/Tests/Views/Argument/RolesRidTest.php
@@ -71,7 +71,7 @@ public function testTitleQuery() {
       ->with($this->equalTo('user_role'))
       ->will($this->returnValue($role_storage_controller));
 
-    // @todo \Drupal\Core\Entity\Entity::entityInfo() uses a global call to
+    // @todo \Drupal\Core\Entity\Entity::entityType() uses a global call to
     //   entity_get_info(), which in turn wraps \Drupal::entityManager(). Set
     //   the entity manager until this is fixed.
     $container = new ContainerBuilder();
diff --git a/core/modules/user/user.module b/core/modules/user/user.module
index 88862d5..93e7c56 100644
--- a/core/modules/user/user.module
+++ b/core/modules/user/user.module
@@ -1795,7 +1795,7 @@ function user_cookie_delete($cookie_name) {
  * Implements hook_file_download_access().
  */
 function user_file_download_access($field, EntityInterface $entity, File $file) {
-  if ($entity->entityType() == 'user') {
+  if ($entity->entityTypeId() == 'user') {
     return $entity->access('view');
   }
 }
diff --git a/core/modules/views/lib/Drupal/views/Plugin/views/cache/CachePluginBase.php b/core/modules/views/lib/Drupal/views/Plugin/views/cache/CachePluginBase.php
index e51b1e1..a55c21b 100644
--- a/core/modules/views/lib/Drupal/views/Plugin/views/cache/CachePluginBase.php
+++ b/core/modules/views/lib/Drupal/views/Plugin/views/cache/CachePluginBase.php
@@ -349,13 +349,13 @@ protected function getCacheTags() {
       // Collect entity IDs if there are view results.
       if (!empty($this->view->result)) {
         foreach ($this->view->result as $result) {
-          $type = $result->_entity->entityType();
+          $type = $result->_entity->entityTypeId();
 
           $tags[$type][] = $result->_entity->id();
           $tags[$type . '_view_' . $result->_entity->bundle()] = TRUE;
 
           foreach ($result->_relationship_entities as $entity) {
-            $type = $entity->entityType();
+            $type = $entity->entityTypeId();
 
             $tags[$type][] = $entity->id();
             $tags[$type . '_view_' . $entity->bundle()] = TRUE;
diff --git a/core/modules/views/lib/Drupal/views/ResultRow.php b/core/modules/views/lib/Drupal/views/ResultRow.php
index 79186c9..018a0de 100644
--- a/core/modules/views/lib/Drupal/views/ResultRow.php
+++ b/core/modules/views/lib/Drupal/views/ResultRow.php
@@ -22,7 +22,7 @@ class ResultRow {
   /**
    * An array of relationship entities.
    *
-   * @var array \Drupal\Core\Entity\EntityInterface[]
+   * @var \Drupal\Core\Entity\EntityInterface[]
    */
   public $_relationship_entities = array();
 
diff --git a/core/modules/views/lib/Drupal/views/ViewExecutable.php b/core/modules/views/lib/Drupal/views/ViewExecutable.php
index c9b097a..d39e9ee 100644
--- a/core/modules/views/lib/Drupal/views/ViewExecutable.php
+++ b/core/modules/views/lib/Drupal/views/ViewExecutable.php
@@ -78,7 +78,7 @@ class ViewExecutable {
    *
    * The array must use a numeric index starting at 0.
    *
-   * @var array
+   * @var \Drupal\views\ResultRow[]
    */
   public $result = array();
 
diff --git a/core/modules/views_ui/lib/Drupal/views_ui/ViewUI.php b/core/modules/views_ui/lib/Drupal/views_ui/ViewUI.php
index ea6448c..568b473 100644
--- a/core/modules/views_ui/lib/Drupal/views_ui/ViewUI.php
+++ b/core/modules/views_ui/lib/Drupal/views_ui/ViewUI.php
@@ -846,10 +846,10 @@ public function isNew() {
   }
 
   /**
-   * Implements \Drupal\Core\Entity\EntityInterface::entityType().
+   * Implements \Drupal\Core\Entity\EntityInterface::entityTypeId().
    */
-  public function entityType() {
-    return $this->storage->entityType();
+  public function entityTypeId() {
+    return $this->storage->entityTypeId();
   }
 
   /**
@@ -860,10 +860,10 @@ public function bundle() {
   }
 
   /**
-   * Implements \Drupal\Core\Entity\EntityInterface::entityInfo().
+   * Implements \Drupal\Core\Entity\EntityInterface::entityType().
    */
-  public function entityInfo() {
-    return $this->storage->entityInfo();
+  public function entityType() {
+    return $this->storage->entityType();
   }
 
   /**
