1<?php 2 3declare(strict_types=1); 4 5/* 6 * This file is part of the TYPO3 CMS project. 7 * 8 * It is free software; you can redistribute it and/or modify it under 9 * the terms of the GNU General Public License, either version 2 10 * of the License, or any later version. 11 * 12 * For the full copyright and license information, please read the 13 * LICENSE.txt file that was distributed with this source code. 14 * 15 * The TYPO3 project - inspiring people to share! 16 */ 17 18namespace TYPO3\CMS\Core\Http; 19 20use Psr\Http\Message\ResponseInterface; 21 22/** 23 * Exception that has to be handled immediately in order to have 24 * stop current execution and provide the current response. This 25 * exception is used as alternative to previous die() or exit(). 26 * 27 * @internal 28 */ 29class ImmediateResponseException extends \Exception 30{ 31 /** 32 * @var ResponseInterface 33 */ 34 private $response; 35 36 /** 37 * @param ResponseInterface $response 38 * @param int $code 39 */ 40 public function __construct(ResponseInterface $response, int $code = 0) 41 { 42 $this->response = $response; 43 $this->code = $code; 44 } 45 46 /** 47 * @return Response 48 */ 49 public function getResponse(): ResponseInterface 50 { 51 return $this->response; 52 } 53} 54