2018-02-09 03:49:49 +00:00
|
|
|
<?php
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Throwable exceptions to return HTTP status code
|
|
|
|
*
|
2019-05-02 01:24:51 +00:00
|
|
|
* This list of Exception has been extracted from
|
2018-02-09 03:49:49 +00:00
|
|
|
* here http://racksburg.com/choosing-an-http-status-code/
|
|
|
|
*/
|
|
|
|
|
|
|
|
namespace Friendica\Network;
|
|
|
|
|
|
|
|
use Exception;
|
|
|
|
|
2019-05-02 01:24:51 +00:00
|
|
|
abstract class HTTPException extends Exception
|
2018-02-09 03:49:49 +00:00
|
|
|
{
|
2019-05-02 01:24:51 +00:00
|
|
|
public $httpdesc = '';
|
2018-02-09 03:49:49 +00:00
|
|
|
|
2019-05-02 01:24:51 +00:00
|
|
|
public function __construct($message = '', Exception $previous = null)
|
2018-02-09 03:49:49 +00:00
|
|
|
{
|
2019-05-02 01:24:51 +00:00
|
|
|
parent::__construct($message, $this->code, $previous);
|
|
|
|
|
|
|
|
if (empty($this->httpdesc)) {
|
2018-02-09 03:49:49 +00:00
|
|
|
$classname = str_replace('Exception', '', str_replace('Friendica\Network\HTTPException\\', '', get_class($this)));
|
|
|
|
$this->httpdesc = preg_replace("|([a-z])([A-Z])|",'$1 $2', $classname);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|