MediaWiki REL1_39
|
Base interface for content objects. More...
Public Member Functions | |
addSectionHeader ( $header) | |
Returns a new WikitextContent object with the given section heading prepended, if supported. | |
convert ( $toModel, $lossy='') | |
Converts this content object into another content object with the given content model, if that is possible. | |
copy () | |
Return a copy of this Content object. | |
equals (Content $that=null) | |
Returns true if this Content objects is conceptually equivalent to the given Content object. | |
getContentHandler () | |
Convenience method that returns the ContentHandler singleton for handling the content model that this Content object uses. | |
getDefaultFormat () | |
Convenience method that returns the default serialization format for the content model that this Content object uses. | |
getModel () | |
Returns the ID of the content model used by this Content object. | |
getNativeData () | |
Returns native representation of the data. | |
getParserOutput (Title $title, $revId=null, ParserOptions $options=null, $generateHtml=true) | |
Parse the Content object and generate a ParserOutput from the result. | |
getRedirectTarget () | |
Construct the redirect destination from this content and return a Title, or null if this content doesn't represent a redirect. | |
getSection ( $sectionId) | |
Returns the section with the given ID. | |
getSize () | |
Returns the content's nominal size in "bogo-bytes". | |
getSupportedFormats () | |
Convenience method that returns the list of serialization formats supported for the content model that this Content object uses. | |
getTextForSearchIndex () | |
getTextForSummary ( $maxLength=250) | |
Returns a textual representation of the content suitable for use in edit summaries and log messages. | |
getWikitextForTransclusion () | |
isCountable ( $hasLinks=null) | |
Returns true if this content is countable as a "real" wiki page, provided that it's also in a countable location (e.g. | |
isEmpty () | |
Returns true if this Content object represents empty content. | |
isRedirect () | |
Returns whether this Content represents a redirect. | |
isSupportedFormat ( $format) | |
Returns true if $format is a supported serialization format for this Content object, false if it isn't. | |
isValid () | |
Returns whether the content is valid. | |
matchMagicWord (MagicWord $word) | |
Returns true if this Content object matches the given magic word. | |
preloadTransform (Title $title, ParserOptions $parserOptions, $params=[]) | |
Returns a Content object with preload transformations applied (or this object if no transformations apply). | |
prepareSave (WikiPage $page, $flags, $parentRevId, User $user) | |
Prepare Content for saving. | |
preSaveTransform (Title $title, User $user, ParserOptions $parserOptions) | |
Returns a Content object with pre-save transformations applied (or this object if no transformations apply). | |
replaceSection ( $sectionId, Content $with, $sectionTitle='') | |
Replaces a section of the content and returns a Content object with the section replaced. | |
serialize ( $format=null) | |
Convenience method for serializing this Content object. | |
updateRedirect (Title $target) | |
If this Content object is a redirect, this method updates the redirect target. | |
Base interface for content objects.
Definition at line 35 of file Content.php.
Content::addSectionHeader | ( | $header | ) |
Returns a new WikitextContent object with the given section heading prepended, if supported.
The default implementation just returns this Content object unmodified, ignoring the section header.
string | $header |
Implemented in AbstractContent, and WikitextContent.
Content::convert | ( | $toModel, | |
$lossy = '' ) |
Converts this content object into another content object with the given content model, if that is possible.
string | $toModel | The desired content model, use the CONTENT_MODEL_XXX flags. |
string | $lossy | Optional flag, set to "lossy" to allow lossy conversion. If lossy conversion is not allowed, full round-trip conversion is expected to work without losing information. |
Implemented in AbstractContent, FallbackContent, and TextContent.
Content::copy | ( | ) |
Return a copy of this Content object.
The following must be true for the object returned:
if $copy = $original->copy()
If and only if the Content object is immutable, the copy() method can and should return $this. That is, $copy === $original may be true, but only for immutable content objects.
Implemented in FallbackContent, MessageContent, and TextContent.
Content::equals | ( | Content | $that = null | ) |
Returns true if this Content objects is conceptually equivalent to the given Content object.
Contract:
Implementations should be careful to make equals() transitive and reflexive:
Implemented in AbstractContent.
Referenced by ContentHandler\getUndoContent().
Content::getContentHandler | ( | ) |
Convenience method that returns the ContentHandler singleton for handling the content model that this Content object uses.
Shorthand for ContentHandler::getForContent( $this )
Implemented in AbstractContent.
Referenced by DifferenceEngine\generateContentDiffBody().
Content::getDefaultFormat | ( | ) |
Convenience method that returns the default serialization format for the content model that this Content object uses.
Shorthand for $this->getContentHandler()->getDefaultFormat()
Implemented in AbstractContent.
Referenced by WikiRevision\setContent().
Content::getModel | ( | ) |
Returns the ID of the content model used by this Content object.
Corresponds to the CONTENT_MODEL_XXX constants.
Implemented in AbstractContent.
Referenced by TextContent\diff(), ContentHandler\getUndoContent(), TextContentHandler\merge3(), WikitextContent\replaceSection(), and WikiRevision\setContent().
Content::getNativeData | ( | ) |
Returns native representation of the data.
Interpretation depends on the data model used, as given by getDataModel().
Implemented in AbstractContent, FallbackContent, MessageContent, and TextContent.
Content::getParserOutput | ( | Title | $title, |
$revId = null, | |||
ParserOptions | $options = null, | ||
$generateHtml = true ) |
Parse the Content object and generate a ParserOutput from the result.
$result->getText() can be used to obtain the generated HTML. If no HTML is needed, $generateHtml can be set to false; in that case, $result->getText() may return null.
Title | $title | The page title to use as a context for rendering. |
int | null | $revId | ID of the revision being rendered. See Parser::parse() for the ramifications. (default: null) |
ParserOptions | null | $options | Any parser options. |
bool | $generateHtml | Whether to generate HTML (default: true). If false, the result of calling getText() on the ParserOutput object returned by this method is undefined. |
Implemented in AbstractContent.
Content::getRedirectTarget | ( | ) |
Construct the redirect destination from this content and return a Title, or null if this content doesn't represent a redirect.
Implemented in AbstractContent, CssContent, JavaScriptContent, and WikitextContent.
Content::getSection | ( | $sectionId | ) |
Returns the section with the given ID.
string | int | $sectionId | Section identifier as a number or string (e.g. 0, 1 or 'T-1'). The ID "0" retrieves the section before the first heading, "1" the text between the first heading (included) and the second heading (excluded), etc. |
Implemented in AbstractContent, and WikitextContent.
Referenced by EditPage\getContentObject().
Content::getSize | ( | ) |
Returns the content's nominal size in "bogo-bytes".
Implemented in FallbackContent, MessageContent, and TextContent.
Content::getSupportedFormats | ( | ) |
Convenience method that returns the list of serialization formats supported for the content model that this Content object uses.
Shorthand for $this->getContentHandler()->getSupportedFormats()
Implemented in AbstractContent.
Content::getTextForSearchIndex | ( | ) |
Test that this actually works
Make sure this also works with LuceneSearch / WikiSearch
Implemented in FallbackContent, MessageContent, and TextContent.
Content::getTextForSummary | ( | $maxLength = 250 | ) |
Returns a textual representation of the content suitable for use in edit summaries and log messages.
int | $maxLength | Maximum length of the summary text, in bytes. Usually implemented using Language::truncateForDatabase() . |
Implemented in FallbackContent, MessageContent, TextContent, and WikitextContent.
Content::getWikitextForTransclusion | ( | ) |
Allow native handling, bypassing wikitext representation, like for includable special pages.
Allow transclusion into other content models than Wikitext!
Used in WikiPage and MessageCache to get message text. Not so nice. What should we use instead?!
Implemented in FallbackContent, MessageContent, and TextContent.
Content::isCountable | ( | $hasLinks = null | ) |
Returns true if this content is countable as a "real" wiki page, provided that it's also in a countable location (e.g.
a current revision in the main namespace).
bool | null | $hasLinks | If it is known whether this content contains links, provide this information here, to avoid redundant parsing to find out. |
Implemented in FallbackContent, MessageContent, and TextContent.
Content::isEmpty | ( | ) |
Returns true if this Content object represents empty content.
Implemented in AbstractContent.
Content::isRedirect | ( | ) |
Returns whether this Content represents a redirect.
Shorthand for getRedirectTarget() !== null.
Implemented in AbstractContent.
Content::isSupportedFormat | ( | $format | ) |
Returns true if $format is a supported serialization format for this Content object, false if it isn't.
Note that this should always return true if $format is null, because null stands for the default serialization.
Shorthand for $this->getContentHandler()->isSupportedFormat( $format )
string | $format | The serialization format to check. |
Implemented in AbstractContent.
Content::isValid | ( | ) |
Returns whether the content is valid.
This is intended for local validity checks, not considering global consistency.
Content needs to be valid before it can be saved.
This default implementation always returns true.
Implemented in AbstractContent, and JsonContent.
Content::matchMagicWord | ( | MagicWord | $word | ) |
Returns true if this Content object matches the given magic word.
MagicWord | $word | The magic word to match |
Implemented in AbstractContent, and WikitextContent.
Content::preloadTransform | ( | Title | $title, |
ParserOptions | $parserOptions, | ||
$params = [] ) |
Returns a Content object with preload transformations applied (or this object if no transformations apply).
Title | $title | |
ParserOptions | $parserOptions | |
array | $params |
Implemented in AbstractContent.
Prepare Content for saving.
Called before Content is saved by WikiPage::doUserEditContent() and in similar places.
This may be used to check the content's consistency with global state. This function should NOT write any information to the database.
Note that this method will usually be called inside the same transaction bracket that will be used to save the new revision.
Note that this method is called before any update to the page table is performed. This means that $page may not yet know a page ID.
WikiPage | $page | The page to be saved. |
int | $flags | Bitfield for use with EDIT_XXX constants, see WikiPage::doUserEditContent() |
int | $parentRevId | The ID of the current revision |
User | $user |
Implemented in AbstractContent.
Content::preSaveTransform | ( | Title | $title, |
User | $user, | ||
ParserOptions | $parserOptions ) |
Returns a Content object with pre-save transformations applied (or this object if no transformations apply).
Title | $title | |
User | $user | |
ParserOptions | $parserOptions |
Implemented in AbstractContent.
Content::replaceSection | ( | $sectionId, | |
Content | $with, | ||
$sectionTitle = '' ) |
Replaces a section of the content and returns a Content object with the section replaced.
string | int | null | bool | $sectionId | Section identifier as a number or string (e.g. 0, 1 or 'T-1'), null/false or an empty string for the whole page or 'new' for a new section. |
Content | $with | New content of the section |
string | $sectionTitle | New section's subject, only if $section is 'new' |
Implemented in AbstractContent, and WikitextContent.
Content::serialize | ( | $format = null | ) |
Convenience method for serializing this Content object.
Shorthand for $this->getContentHandler()->serializeContent( $this, $format )
string | null | $format | The desired serialization format, or null for the default format. |
Implemented in AbstractContent, and FallbackContent.
Referenced by AbstractContent\equalsInternal(), and WikiRevision\setContent().
Content::updateRedirect | ( | Title | $target | ) |
If this Content object is a redirect, this method updates the redirect target.
Otherwise, it does nothing.
Title | $target | The new redirect target |
Implemented in AbstractContent, CssContent, JavaScriptContent, and WikitextContent.