Mercurial > hg > cmmr2012-drupal-site
diff core/modules/aggregator/src/FeedViewBuilder.php @ 5:12f9dff5fda9 tip
Update to Drupal core 8.7.1
author | Chris Cannam |
---|---|
date | Thu, 09 May 2019 15:34:47 +0100 |
parents | c75dbcec494b |
children |
line wrap: on
line diff
--- a/core/modules/aggregator/src/FeedViewBuilder.php Thu Feb 28 13:11:55 2019 +0000 +++ b/core/modules/aggregator/src/FeedViewBuilder.php Thu May 09 15:34:47 2019 +0100 @@ -2,11 +2,14 @@ namespace Drupal\aggregator; -use Drupal\Core\Entity\EntityManagerInterface; +use Drupal\Core\Entity\EntityDisplayRepositoryInterface; +use Drupal\Core\Entity\EntityRepositoryInterface; use Drupal\Core\Entity\EntityTypeInterface; +use Drupal\Core\Entity\EntityTypeManagerInterface; use Drupal\Core\Entity\EntityViewBuilder; use Drupal\Core\Config\Config; use Drupal\Core\Language\LanguageManagerInterface; +use Drupal\Core\Theme\Registry; use Drupal\Core\Url; use Symfony\Component\DependencyInjection\ContainerInterface; @@ -16,20 +19,41 @@ class FeedViewBuilder extends EntityViewBuilder { /** + * The 'aggregator.settings' config. + * + * @var \Drupal\Core\Config\Config + */ + protected $config; + + /** + * The entity type manager. + * + * @var \Drupal\Core\Entity\EntityTypeManagerInterface + */ + protected $entityTypeManager; + + /** * Constructs a new FeedViewBuilder. * * @param \Drupal\Core\Entity\EntityTypeInterface $entity_type * The entity type definition. - * @param \Drupal\Core\Entity\EntityManagerInterface $entity_manager - * The entity manager service. + * @param \Drupal\Core\Entity\EntityRepositoryInterface $entity_repository + * The entity repository service. * @param \Drupal\Core\Language\LanguageManagerInterface $language_manager * The language manager. * @param \Drupal\Core\Config\Config $config * The 'aggregator.settings' config. + * @param \Drupal\Core\Theme\Registry $theme_registry + * The theme registry. + * @param \Drupal\Core\Entity\EntityDisplayRepositoryInterface $entity_display_repository + * The entity display repository. + * @param \Drupal\Core\Entity\EntityTypeManagerInterface $entity_type_manager + * The entity type manager. */ - public function __construct(EntityTypeInterface $entity_type, EntityManagerInterface $entity_manager, LanguageManagerInterface $language_manager, Config $config) { - parent::__construct($entity_type, $entity_manager, $language_manager); + public function __construct(EntityTypeInterface $entity_type, EntityRepositoryInterface $entity_repository, LanguageManagerInterface $language_manager, Config $config, Registry $theme_registry, EntityDisplayRepositoryInterface $entity_display_repository, EntityTypeManagerInterface $entity_type_manager) { + parent::__construct($entity_type, $entity_repository, $language_manager, $theme_registry, $entity_display_repository); $this->config = $config; + $this->entityTypeManager = $entity_type_manager; } /** @@ -38,9 +62,12 @@ public static function createInstance(ContainerInterface $container, EntityTypeInterface $entity_type) { return new static( $entity_type, - $container->get('entity.manager'), + $container->get('entity.repository'), $container->get('language_manager'), - $container->get('config.factory')->get('aggregator.settings') + $container->get('config.factory')->get('aggregator.settings'), + $container->get('theme.registry'), + $container->get('entity_display.repository'), + $container->get('entity_type.manager') ); } @@ -58,11 +85,11 @@ // When in summary view mode, respect the list_max setting. $limit = $view_mode == 'summary' ? $this->config->get('source.list_max') : 20; // Retrieve the items attached to this feed. - $items = $this->entityManager + $items = $this->entityTypeManager ->getStorage('aggregator_item') ->loadByFeed($entity->id(), $limit); - $build[$id]['items'] = $this->entityManager + $build[$id]['items'] = $this->entityTypeManager ->getViewBuilder('aggregator_item') ->viewMultiple($items, $view_mode, $entity->language()->getId());