wiki.techinc.nl/includes/Rest/LocalizedHttpException.php

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

44 lines
998 B
PHP
Raw Normal View History

<?php
namespace MediaWiki\Rest;
use Wikimedia\Message\DataMessageValue;
use Wikimedia\Message\MessageValue;
/**
* @newable
*/
class LocalizedHttpException extends HttpException {
private MessageValue $messageValue;
private string $errorKey;
/**
* @stable to call
*
* @param MessageValue $messageValue
* @param int $code
* @param array $errorData
*/
public function __construct( MessageValue $messageValue, $code = 500, $errorData = [] ) {
if ( $messageValue instanceof DataMessageValue ) {
$errorKey = $messageValue->getCode();
$errorData += $messageValue->getData() ?? [];
} else {
$errorKey = $messageValue->getKey();
}
parent::__construct(
'Localized exception with key ' . $messageValue->getKey(), $code, $errorData
);
$this->messageValue = $messageValue;
$this->errorKey = $errorKey;
}
public function getMessageValue(): MessageValue {
return $this->messageValue;
}
public function getErrorKey(): string {
return $this->errorKey;
}
}