function DefaultExceptionSubscriber::setEventResponse
1 call to DefaultExceptionSubscriber::setEventResponse()
- DefaultExceptionSubscriber::onException in core/
modules/ jsonapi/ src/ EventSubscriber/ DefaultExceptionSubscriber.php  - Handles errors for this subscriber.
 
File
- 
              core/
modules/ jsonapi/ src/ EventSubscriber/ DefaultExceptionSubscriber.php, line 59  
Class
- DefaultExceptionSubscriber
 - Serializes exceptions in compliance with the JSON:API specification.
 
Namespace
Drupal\jsonapi\EventSubscriberCode
protected function setEventResponse(ExceptionEvent $event, $status) {
  /** @var \Symfony\Component\HttpKernel\Exception\HttpException $exception */
  $exception = $event->getThrowable();
  $document = new JsonApiDocumentTopLevel(new ErrorCollection([
    $exception,
  ]), new NullIncludedData(), new LinkCollection([]));
  if ($event->getRequest()
    ->isMethodCacheable()) {
    $response = new CacheableResourceResponse($document, $exception->getStatusCode(), $exception->getHeaders());
    $response->addCacheableDependency($exception);
  }
  else {
    $response = new ResourceResponse($document, $exception->getStatusCode(), $exception->getHeaders());
  }
  $event->setResponse($response);
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.