mirror of
https://github.com/PrivateBin/PrivateBin.git
synced 2026-04-19 21:58:08 -04:00
refactored exceptions in controller
- added missing exception doc blocks - introduced exception type that translates message during construction - catch explicit exception types where possible
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
<?php declare(strict_types=1);
|
||||
/**
|
||||
* PrivateBin
|
||||
*
|
||||
* a zero-knowledge paste bin
|
||||
*
|
||||
* @link https://github.com/PrivateBin/PrivateBin
|
||||
* @copyright 2012 Sébastien SAUVAGE (sebsauvage.net)
|
||||
* @license https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License
|
||||
*/
|
||||
|
||||
namespace PrivateBin;
|
||||
|
||||
use Exception;
|
||||
use PrivateBin\I18n;
|
||||
|
||||
/**
|
||||
* TranslatedException
|
||||
*
|
||||
* An Exception that translates it's message.
|
||||
*/
|
||||
class TranslatedException extends Exception
|
||||
{
|
||||
/**
|
||||
* Translating exception constructor with mandatory messageId.
|
||||
*
|
||||
* @access public
|
||||
* @param string|array $messageId message ID or array of message ID and parameters
|
||||
* @param int $code
|
||||
* @param ?Throwable $previous
|
||||
*/
|
||||
public function __construct(string|array $messageId, int $code = 0, ?Throwable $previous = null) {
|
||||
$message = is_string($messageId) ? I18n::translate($messageId) : forward_static_call_array('PrivateBin\I18n::translate', $messageId);
|
||||
parent::__construct($message, $code, $previous);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user