Make lines short to pass phpcs in six files under includes/
[lhc/web/wiklou.git] / includes / title / MalformedTitleException.php
index a9e58b3..5b8b643 100644 (file)
@@ -1,7 +1,5 @@
 <?php
 /**
- * Representation of a page title within %MediaWiki.
- *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 2 of the License, or
  * http://www.gnu.org/copyleft/gpl.html
  *
  * @file
- * @license GPL 2+
- * @author Daniel Kinzler
  */
 
 /**
  * MalformedTitleException is thrown when a TitleParser is unable to parse a title string.
- *
- * @license GPL 2+
- * @author Daniel Kinzler
  * @since 1.23
  */
 class MalformedTitleException extends Exception {
+       private $titleText = null;
+       private $errorMessage = null;
+       private $errorMessageParameters = array();
+
+       /**
+        * @param string $errorMessage Localisation message describing the error (since MW 1.26)
+        * @param string $titleText The invalid title text (since MW 1.26)
+        * @param string[] $errorMessageParameters Additional parameters for the error message.
+        * $titleText will be appended if it's not null. (since MW 1.26)
+        */
+       public function __construct(
+               $errorMessage = null, $titleText = null, $errorMessageParameters = array()
+       ) {
+               $this->errorMessage = $errorMessage;
+               $this->titleText = $titleText;
+               if ( $titleText !== null ) {
+                       $errorMessageParameters[] = $titleText;
+               }
+               $this->errorMessageParameters = $errorMessageParameters;
+
+               // Supply something useful for Exception::getMessage() to return.
+               $enMsg = wfMessage( $errorMessage, $errorMessageParameters );
+               $enMsg->inLanguage( 'en' )->useDatabase( false );
+               parent::__construct( $enMsg->text() );
+       }
+
+       /**
+        * @since 1.26
+        * @return string|null
+        */
+       public function getTitleText() {
+               return $this->titleText;
+       }
+
+       /**
+        * @since 1.26
+        * @return string|null
+        */
+       public function getErrorMessage() {
+               return $this->errorMessage;
+       }
+
+       /**
+        * @since 1.26
+        * @return string[]
+        */
+       public function getErrorMessageParameters() {
+               return $this->errorMessageParameters;
+       }
 }