Server IP : 104.21.14.103 / Your IP : 3.145.37.251 Web Server : LiteSpeed System : Linux business53.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : giankuin ( 1871) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/self/root/proc/thread-self/root/home/giankuin/thietke365.net/wp-content/plugins/mailpoet/lib/ |
Upload File : |
<?php declare(strict_types = 1); // phpcs:ignoreFile PSR1.Classes.ClassDeclaration namespace MailPoet; if (!defined('ABSPATH')) exit; /** * Provides information for converting exceptions to HTTP responses. */ interface HttpAwareException { public function getHttpStatusCode(): int; } /** * Frames all MailPoet exceptions ("$e instanceof MailPoet\Exception"). */ abstract class Exception extends \Exception { /** @var string[] */ private $errors = []; final public function __construct($message = '', $code = 0, \Throwable $previous = null) { parent::__construct($message, $code, $previous); } /** @return static */ public static function create(\Throwable $previous = null) { return new static('', 0, $previous); } /** @return static */ public function withMessage(string $message) { $this->message = $message; return $this; } /** @return static */ public function withCode(int $code) { $this->code = $code; return $this; } /** @return static */ public function withErrors(array $errors) { $this->errors = $errors; return $this; } /** @return static */ public function withError(string $id, string $error) { $this->errors[$id] = $error; return $this; } public function getErrors(): array { return $this->errors; } } /** * USE: Generic runtime error. When possible, use a more specific exception instead. * API: 500 Server Error (not HTTP-aware) */ class RuntimeException extends Exception {} /** * USE: When wrong data VALUE is received. * API: 400 Bad Request */ class UnexpectedValueException extends RuntimeException implements HttpAwareException { public function getHttpStatusCode(): int { return 400; } } /** * USE: When an action is forbidden for given actor (although generally valid). * API: 403 Forbidden */ class AccessDeniedException extends UnexpectedValueException implements HttpAwareException { public function getHttpStatusCode(): int { return 403; } } /** * USE: When the main resource we're interested in doesn't exist. * API: 404 Not Found */ class NotFoundException extends UnexpectedValueException implements HttpAwareException { public function getHttpStatusCode(): int { return 404; } } /** * USE: When the main action produces conflict (i.e. duplicate key). * API: 409 Conflict */ class ConflictException extends UnexpectedValueException implements HttpAwareException { public function getHttpStatusCode(): int { return 409; } } /** * USE: An application state that should not occur. Can be subclassed for feature-specific exceptions. * API: 500 Server Error (not HTTP-aware) */ class InvalidStateException extends RuntimeException {} class NewsletterProcessingException extends Exception {}