Merge "Use {{int:}} on MediaWiki:Blockedtext and MediaWiki:Autoblockedtext"
[lhc/web/wiklou.git] / includes / libs / rdbms / exception / DBExpectedError.php
1 <?php
2 /**
3 * This program is free software; you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation; either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License along
14 * with this program; if not, write to the Free Software Foundation, Inc.,
15 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
16 * http://www.gnu.org/copyleft/gpl.html
17 *
18 * @file
19 */
20
21 namespace Wikimedia\Rdbms;
22
23 use MessageSpecifier;
24
25 /**
26 * Base class for the more common types of database errors. These are known to occur
27 * frequently, so we try to give friendly error messages for them.
28 *
29 * @ingroup Database
30 * @since 1.23
31 */
32 class DBExpectedError extends DBError implements MessageSpecifier {
33 /** @var string[] Message parameters */
34 protected $params;
35
36 /**
37 * @param IDatabase|null $db
38 * @param string $error
39 * @param array $params
40 * @param \Exception|\Throwable|null $prev
41 */
42 public function __construct(
43 IDatabase $db = null, $error, array $params = [], $prev = null
44 ) {
45 parent::__construct( $db, $error, $prev );
46 $this->params = $params;
47 }
48
49 public function getKey() {
50 return 'databaseerror-text';
51 }
52
53 public function getParams() {
54 return $this->params;
55 }
56 }
57
58 class_alias( DBExpectedError::class, 'DBExpectedError' );