diff --git a/core/modules/book/lib/Drupal/book/Form/BookAdminEditForm.php b/core/modules/book/lib/Drupal/book/Form/BookAdminEditForm.php index 8ae6296..993048a 100644 --- a/core/modules/book/lib/Drupal/book/Form/BookAdminEditForm.php +++ b/core/modules/book/lib/Drupal/book/Form/BookAdminEditForm.php @@ -10,7 +10,7 @@ use Drupal\Core\Form\FormBase; use Drupal\Component\Utility\Crypt; use Drupal\Core\Entity\EntityInterface; -use Drupal\Core\Entity\EntityManager; +use Drupal\Core\Entity\EntityStorageControllerInterface; use Drupal\Core\Cache\CacheBackendInterface; use Drupal\Core\Language\Language; use Drupal\Core\DependencyInjection\ContainerInjectionInterface; @@ -29,30 +29,46 @@ class BookAdminEditForm extends FormBase implements ContainerInjectionInterface protected $cache; /** - * Stores the Entity manager. + * The node storage controller. * - * @var \Drupal\Core\Entity\EntityManager + * @var \Drupal\Core\Entity\EntityStorageControllerInterface */ - protected $entityManager; + protected $nodeStorage; + + /** + * The menu link storage controller. + * + * @var \Drupal\Core\Entity\EntityStorageControllerInterface + */ + protected $menuLinkStorage; /** * Constructs a new BookAdminEditForm. * * @param \Drupal\Core\Cache\CacheBackendInterface $cache * The menu cache object to be used by this controller. + * + * @param \Drupal\Core\Entity\EntityStorageControllerInterface $node_storage + * The custom block storage controller. + * + * @param \Drupal\Core\Entity\EntityStorageControllerInterface $menu_link_storage + * The custom block type storage controller. */ - public function __construct(CacheBackendInterface $cache, EntityManager $entity_manager) { + public function __construct(CacheBackendInterface $cache, EntityStorageControllerInterface $node_storage, EntityStorageControllerInterface $menu_link_storage) { $this->cache = $cache; - $this->entityManager = $entity_manager; + $this->nodeStorage = $node_storage; + $this->menuLinkStorage = $menu_link_storage; } /** * {@inheritdoc} */ public static function create(ContainerInterface $container) { + $entity_manager = $container->get('entity.manager'); return new static( $container->get('cache.menu'), - $container->get('entity.manager') + $entity_manager->getStorageController('node'), + $entity_manager->getStorageController('menu_link') ); } @@ -105,7 +121,7 @@ public function submitForm(array &$form, array &$form_state) { // Update menu item if moved. if ($row['plid']['#default_value'] != $values['plid'] || $row['weight']['#default_value'] != $values['weight']) { - $menu_link = $this->entityManager->getStorageController('menu_link')->load($values['mlid']); + $menu_link = $this->menuLinkStorage->load($values['mlid']); $menu_link->weight = $values['weight']; $menu_link->plid = $values['plid']; $menu_link->save(); @@ -114,7 +130,7 @@ public function submitForm(array &$form, array &$form_state) { // Update the title if changed. if ($row['title']['#default_value'] != $values['title']) { - $node = $this->entityManager->getStorageController('node')->load($values['nid']); + $node = $this->nodeStorage->load($values['nid']); $langcode = Language::LANGCODE_NOT_SPECIFIED; $node->title = $values['title']; $node->book['link_title'] = $values['title'];