You are here

public function LocalTaskManager::__construct in Drupal 8

Same name and namespace in other branches
  1. 9 core/lib/Drupal/Core/Menu/LocalTaskManager.php \Drupal\Core\Menu\LocalTaskManager::__construct()

Constructs a \Drupal\Core\Menu\LocalTaskManager object.

Parameters

\Symfony\Component\HttpKernel\Controller\ArgumentResolverInterface $argument_resolver: An object to use in resolving route arguments.

\Symfony\Component\HttpFoundation\RequestStack $request_stack: The request object to use for building titles and paths for plugin instances.

\Drupal\Core\Routing\RouteMatchInterface $route_match: The current route match.

\Drupal\Core\Routing\RouteProviderInterface $route_provider: The route provider to load routes by name.

\Drupal\Core\Extension\ModuleHandlerInterface $module_handler: The module handler.

\Drupal\Core\Cache\CacheBackendInterface $cache: The cache backend.

\Drupal\Core\Language\LanguageManagerInterface $language_manager: The language manager.

\Drupal\Core\Access\AccessManagerInterface $access_manager: The access manager.

\Drupal\Core\Session\AccountInterface $account: The current user.

Overrides DefaultPluginManager::__construct

File

core/lib/Drupal/Core/Menu/LocalTaskManager.php, line 147

Class

LocalTaskManager
Provides the default local task manager using YML as primary definition.

Namespace

Drupal\Core\Menu

Code

public function __construct(ArgumentResolverInterface $argument_resolver, RequestStack $request_stack, RouteMatchInterface $route_match, RouteProviderInterface $route_provider, ModuleHandlerInterface $module_handler, CacheBackendInterface $cache, LanguageManagerInterface $language_manager, AccessManagerInterface $access_manager, AccountInterface $account) {
  $this->factory = new ContainerFactory($this, '\\Drupal\\Core\\Menu\\LocalTaskInterface');
  $this->argumentResolver = $argument_resolver;
  if ($argument_resolver instanceof ControllerResolverInterface) {
    @trigger_error("Using the 'controller_resolver' service as the first argument is deprecated, use the 'http_kernel.controller.argument_resolver' instead. If your subclass requires the 'controller_resolver' service add it as an additional argument. See https://www.drupal.org/node/2959408.", E_USER_DEPRECATED);
    $this->controllerResolver = $argument_resolver;
  }
  $this->requestStack = $request_stack;
  $this->routeMatch = $route_match;
  $this->routeProvider = $route_provider;
  $this->accessManager = $access_manager;
  $this->account = $account;
  $this->moduleHandler = $module_handler;
  $this
    ->alterInfo('local_tasks');
  $this
    ->setCacheBackend($cache, 'local_task_plugins:' . $language_manager
    ->getCurrentLanguage()
    ->getId(), [
    'local_task',
  ]);
}