public function HttpKernel::handle

Same name in this branch

Handles a Request to convert it to a Response.

When $catch is true, the implementation must catch all exceptions and do its best to convert them to a Response instance.

@api

Parameters

Request $request A Request instance:

integer $type The type of the request: (one of HttpKernelInterface::MASTER_REQUEST or HttpKernelInterface::SUB_REQUEST)

Boolean $catch Whether to catch exceptions or not:

Return value

Response A Response instance

Throws

\Exception When an Exception occurs during processing

Overrides HttpKernel::handle

2 calls to HttpKernel::handle()
HttpKernel::forward in drupal/core/lib/Drupal/Core/HttpKernel.php
Forwards the request to another controller.
HttpKernel::render in drupal/core/lib/Drupal/Core/HttpKernel.php
Renders a Controller and returns the Response content.

File

drupal/core/lib/Drupal/Core/HttpKernel.php, line 43
Definition of Drupal\Core\HttpKernel.

Class

HttpKernel
This HttpKernel is used to manage scope changes of the DI container.

Namespace

Drupal\Core

Code

public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true) {
  $request->headers
    ->set('X-Php-Ob-Level', ob_get_level());
  $this->container
    ->enterScope('request');
  $this->container
    ->set('request', $request, 'request');
  try {
    $response = parent::handle($request, $type, $catch);
  } catch (\Exception $e) {
    $this->container
      ->leaveScope('request');
    throw $e;
  }
  $this->container
    ->leaveScope('request');
  return $response;
}