You are here

DomainMenusController.php in Domain Menus for Domains 9.1.x

File

src/Controller/DomainMenusController.php
View source
<?php

namespace Drupal\domain_menus\Controller;

use Drupal\Core\Controller\ControllerBase;
use Drupal\Core\Entity\EntityInterface;
use Drupal\domain_menus\DomainMenusListBuilder;
use Drupal\Core\Entity\EntityTypeManagerInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;

/**
 * Class DomainMenusController.
 */
class DomainMenusController extends ControllerBase {

  /**
   * Drupal\Core\Entity\EntityTypeManagerInterface definition.
   *
   * @var \Drupal\Core\Entity\EntityTypeManagerInterface
   */
  protected $entityTypeManager;
  public function __construct(EntityTypeManagerInterface $entity_type_manager) {
    $this->entityTypeManager = $entity_type_manager;
  }

  /**
   * {@inheritdoc}
   */
  public static function create(ContainerInterface $container) {
    return new static($container
      ->get('entity_type.manager'));
  }

  /**
   * List menus.
   */
  public function listMenus() {
    $entity_type = $this->entityTypeManager
      ->getDefinition('menu');
    $entity_storage = $this->entityTypeManager
      ->getStorage('menu');
    $menu_list = new DomainMenusListBuilder($entity_type, $entity_storage);
    $build = $menu_list
      ->render();
    return $build;
  }

}

Classes

Namesort descending Description
DomainMenusController Class DomainMenusController.