1<?php 2namespace TYPO3\CMS\Core\Error; 3 4/* 5 * This file is part of the TYPO3 CMS project. 6 * 7 * It is free software; you can redistribute it and/or modify it under 8 * the terms of the GNU General Public License, either version 2 9 * of the License, or any later version. 10 * 11 * For the full copyright and license information, please read the 12 * LICENSE.txt file that was distributed with this source code. 13 * 14 * The TYPO3 project - inspiring people to share! 15 */ 16 17/** 18 * Contract for an exception handler 19 * 20 * This file is a backport from TYPO3 Flow 21 */ 22interface ExceptionHandlerInterface 23{ 24 /** 25 * Constructs this exception handler - registers itself as the default exception handler. 26 */ 27 public function __construct(); 28 29 /** 30 * Handles the given exception 31 * 32 * @param \Throwable $exception The throwable object. 33 */ 34 public function handleException(\Throwable $exception); 35 36 /** 37 * Formats and echoes the exception as XHTML. 38 * 39 * @param \Throwable $exception The throwable object. 40 */ 41 public function echoExceptionWeb(\Throwable $exception); 42 43 /** 44 * Formats and echoes the exception for the command line 45 * 46 * @param \Throwable $exception The throwable object. 47 */ 48 public function echoExceptionCLI(\Throwable $exception); 49} 50