Follow-up to
154bcdc63f
Change-Id: I0c1dc41d29cc3b3c1938ed6df6bb11cc1b4a8e8f
*
* @license GPL 2+
* @author Daniel Kinzler
*
* @license GPL 2+
* @author Daniel Kinzler
*/
class MalformedTitleException extends Exception {
}
*/
class MalformedTitleException extends Exception {
}
* A service for generating links from page titles.
*
* @see https://www.mediawiki.org/wiki/Requests_for_comment/TitleValue
* A service for generating links from page titles.
*
* @see https://www.mediawiki.org/wiki/Requests_for_comment/TitleValue
*/
class MediaWikiPageLinkRenderer implements PageLinkRenderer {
/**
*/
class MediaWikiPageLinkRenderer implements PageLinkRenderer {
/**
* via parseTitle() or from a (semi)trusted source, such as the database.
*
* @see https://www.mediawiki.org/wiki/Requests_for_comment/TitleValue
* via parseTitle() or from a (semi)trusted source, such as the database.
*
* @see https://www.mediawiki.org/wiki/Requests_for_comment/TitleValue
*/
class MediaWikiTitleCodec implements TitleFormatter, TitleParser {
/**
*/
class MediaWikiTitleCodec implements TitleFormatter, TitleParser {
/**
* URLs, and how links are encoded in a given output format.
*
* @see https://www.mediawiki.org/wiki/Requests_for_comment/TitleValue
* URLs, and how links are encoded in a given output format.
*
* @see https://www.mediawiki.org/wiki/Requests_for_comment/TitleValue
*/
interface PageLinkRenderer {
/**
*/
interface PageLinkRenderer {
/**
* forms to be used in the database, in urls, in wikitext, etc.
*
* @see https://www.mediawiki.org/wiki/Requests_for_comment/TitleValue
* forms to be used in the database, in urls, in wikitext, etc.
*
* @see https://www.mediawiki.org/wiki/Requests_for_comment/TitleValue
*/
interface TitleFormatter {
/**
*/
interface TitleFormatter {
/**
* forms to be used in the database, in urls, in wikitext, etc.
*
* @see https://www.mediawiki.org/wiki/Requests_for_comment/TitleValue
* forms to be used in the database, in urls, in wikitext, etc.
*
* @see https://www.mediawiki.org/wiki/Requests_for_comment/TitleValue
*/
interface TitleParser {
/**
*/
interface TitleParser {
/**
* It does not represent a link, and does not support interwiki prefixes etc.
*
* @see https://www.mediawiki.org/wiki/Requests_for_comment/TitleValue
* It does not represent a link, and does not support interwiki prefixes etc.
*
* @see https://www.mediawiki.org/wiki/Requests_for_comment/TitleValue
*/
class TitleValue {
/**
*/
class TitleValue {
/**