diff --git a/core/includes/entity.inc b/core/includes/entity.inc index 24e150f..33a741d 100644 --- a/core/includes/entity.inc +++ b/core/includes/entity.inc @@ -47,6 +47,7 @@ function entity_get_info($entity_type = NULL) { 'fieldable' => FALSE, 'entity class' => 'Drupal\Core\Entity\Entity', 'controller class' => 'Drupal\Core\Entity\DatabaseStorageController', + 'list controller class' => 'Drupal\Core\Entity\EntityListControllerBase', 'form controller class' => array( 'default' => 'Drupal\Core\Entity\EntityFormController', ), @@ -557,18 +558,9 @@ function entity_list_controller($entity_type) { $info = entity_get_info($entity_type); - // Check whether there is a controller class for the specified operation. - if (!empty($info['list controller class'])) { - $class = $info['list controller class']; - } - // If no controller is specified default to the base implementation. - // @todo Provide a sane base implementation. - /* - elseif (empty($info['list controller class'])) { - $class = 'Drupal\Core\Entity\EntityListControllerBase'; - } - */ - else { + $class = $info['list controller class']; + // @todo Provide a non-abstract base implementation, see entity_get_info(). + if ($class == 'Drupal\Core\Entity\EntityListControllerBase') { throw new \InvalidArgumentException("Missing list controller for '$entity_type'"); }