protected function ControllerResolver::createController

Same name in this branch
  1. 9.x drupal/core/lib/Drupal/Core/ControllerResolver.php \Drupal\Core\ControllerResolver::createController()
  2. 9.x drupal/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Controller/ControllerResolver.php \Symfony\Component\HttpKernel\Controller\ControllerResolver::createController()

Returns a callable for the given controller.

Parameters

string $controller: A Controller string.

Return value

mixed A PHP callable.

Overrides ControllerResolver::createController

File

drupal/core/lib/Drupal/Core/ControllerResolver.php, line 54
Definition of Drupal\Core\ControllerResolver.

Class

ControllerResolver
ControllerResolver to enhance controllers beyond Symfony's basic handling.

Namespace

Drupal\Core

Code

protected function createController($controller) {
  $controller = parent::createController($controller);

  // $controller will be an array of object and method name, per PHP's
  // definition of a callable. Index 0 therefore is the object we want to
  // enhance.
  if ($controller[0] instanceof ContainerAwareInterface) {
    $controller[0]
      ->setContainer($this->container);
  }
  return $controller;
}