MediaWiki 1.42.1
JsonContentHandler Class Reference

Content handler for JSON text. More...

Inherits CodeContentHandler.

Collaboration diagram for JsonContentHandler:

Public Member Functions

 __construct ( $modelId=CONTENT_MODEL_JSON)
 
 makeEmptyContent ()
 Creates an empty TextContent object.
 
 preSaveTransform (Content $content, PreSaveTransformParams $pstParams)
 Returns a $content object with pre-save transformations applied (or the same object if no transformations apply).
 
 supportsPreloadContent ()
 Enables EditPage's preload feature on .json pages as well as for extensions like MassMessage that subclass {.
 
 validateSave (Content $content, ValidationParams $validationParams)
 
- Public Member Functions inherited from CodeContentHandler
 getPageLanguage (Title $title, Content $content=null)
 Returns the English language, because code is English, and should be handled as such.
 
 getPageViewLanguage (Title $title, Content $content=null)
 Returns the English language, because code is English, and should be handled as such.
 
- Public Member Functions inherited from TextContentHandler
 __construct ( $modelId=CONTENT_MODEL_TEXT, $formats=[CONTENT_FORMAT_TEXT])
 Constructor, initializing the ContentHandler instance with its model ID and a list of supported formats.
 
 getDataForSearchIndex (WikiPage $page, ParserOutput $output, SearchEngine $engine, ?RevisionRecord $revision=null)
 
 getFieldsForSearchIndex (SearchEngine $engine)
 Get fields definition for search index.
 
 merge3 (Content $oldContent, Content $myContent, Content $yourContent)
 Attempts to merge differences between three versions.
 
 serializeContent (Content $content, $format=null)
 Returns the content's text as-is.
 
 supportsDirectEditing ()
 
 unserializeContent ( $text, $format=null)
 Unserializes a Content object of the type supported by this ContentHandler.
 
- Public Member Functions inherited from ContentHandler
 canBeUsedOn (Title $title)
 Determines whether the content type handled by this ContentHandler can be used for the main slot of the given page.
 
 createDifferenceEngine (IContextSource $context, $old=0, $new=0, $rcid=0, $refreshCache=false, $unhide=false)
 Factory for creating an appropriate DifferenceEngine for this content model.
 
 exportTransform ( $blob, $format=null)
 Applies transformations on export (returns the blob unchanged per default).
 
 fillParserOutputInternal (Content $content, ContentParseParams $cpoParams, ParserOutput &$output)
 A temporary layer to move AbstractContent::fillParserOutput to ContentHandler::fillParserOutput.
 
 generateHTMLOnEdit ()
 Whether an edit on the content should trigger an HTML render and ParserCache entry.
 
 getActionOverrides ()
 Returns overrides for action handlers.
 
 getAutoDeleteReason (Title $title, &$hasHistory=false)
 Auto-generates a deletion reason.
 
 getAutosummary (Content $oldContent=null, Content $newContent=null, $flags=0)
 Return an applicable auto-summary if one exists for the given edit.
 
 getChangeTag (Content $oldContent=null, Content $newContent=null, $flags=0)
 Return an applicable tag if one exists for the given edit or return null.
 
 getDataForSearchIndex (WikiPage $page, ParserOutput $output, SearchEngine $engine, RevisionRecord $revision=null)
 Return fields to be indexed by search engine as representation of this document.
 
 getDefaultFormat ()
 The format used for serialization/deserialization by default by this ContentHandler.
 
 getDeletionUpdates (Title $title, $role)
 Returns a list of DeferrableUpdate objects for removing information about content in some secondary data store.
 
 getModelID ()
 Returns the model id that identifies the content model this ContentHandler can handle.
 
 getParserOutput (Content $content, ContentParseParams $cpoParams)
 Returns a ParserOutput object containing information derived from this content.
 
 getParserOutputForIndexing (WikiPage $page, ParserCache $cache=null, RevisionRecord $revision=null)
 Produce page output suitable for indexing.
 
 getSecondaryDataUpdates (Title $title, Content $content, $role, SlotRenderingProvider $slotOutput)
 Returns a list of DeferrableUpdate objects for recording information about the given Content in some secondary data store.
 
 getSlotDiffRenderer (IContextSource $context, array $options=[])
 Get an appropriate SlotDiffRenderer for this content model.
 
 getSupportedFormats ()
 Returns a list of serialization formats supported by the serializeContent() and unserializeContent() methods of this ContentHandler.
 
 getUndoContent (Content $currentContent, Content $undoContent, Content $undoAfterContent, $undoIsLatest=false)
 Get the Content object that needs to be saved in order to undo all changes between $undo and $undoafter.
 
 importTransform ( $blob, $format=null)
 Apply import transformation (per default, returns $blob unchanged).
 
 isParserCacheSupported ()
 Returns true for content models that support caching using the ParserCache mechanism.
 
 isSupportedFormat ( $format)
 Returns true if $format is a serialization format supported by this ContentHandler, and false otherwise.
 
 makeRedirectContent (Title $destination, $text='')
 Creates a new Content object that acts as a redirect to the given page, or null if redirects are not supported by this content model.
 
 preloadTransform (Content $content, PreloadTransformParams $pltParams)
 Returns a $content object with preload transformations applied (or the same object if no transformations apply).
 
 supportsCategories ()
 Returns true if this content model supports categories.
 
 supportsDirectApiEditing ()
 Whether or not this content model supports direct editing via ApiEditPage.
 
 supportsRedirects ()
 Returns true if this content model supports redirects.
 
 supportsSections ()
 Returns true if this content model supports sections.
 

Protected Member Functions

 fillParserOutput (Content $content, ContentParseParams $cpoParams, ParserOutput &$parserOutput)
 Set the HTML and add the appropriate styles.
 
 getContentClass ()
 
- Protected Member Functions inherited from ContentHandler
 addSearchField (&$fields, SearchEngine $engine, $name, $type)
 Add new field definition to array.
 
 checkFormat ( $format)
 Convenient for checking whether a format provided as a parameter is actually supported.
 
 checkModelID ( $model_id)
 
 createTextSlotDiffRenderer (array $options=[])
 Create a TextSlotDiffRenderer and inject dependencies.
 
 getDiffEngineClass ()
 Returns the name of the diff engine to use.
 
 getSlotDiffRendererInternal (IContextSource $context)
 Return the SlotDiffRenderer appropriate for this content handler.
 
 getSlotDiffRendererWithOptions (IContextSource $context, $options=[])
 Return the SlotDiffRenderer appropriate for this content handler.
 
 latestRevision (WikiPage $page)
 Get the latest revision of the given $page, fetching it from the primary if necessary.
 

Additional Inherited Members

- Static Public Member Functions inherited from ContentHandler
static getAllContentFormats ()
 
static getContentModels ()
 
static getContentText (Content $content=null)
 Convenience function for getting flat text from a Content object.
 
static getDefaultModelFor (Title $title)
 Returns the name of the default content model to be used for the page with the given title.
 
static getForContent (Content $content)
 Returns the appropriate ContentHandler singleton for the given Content object.
 
static getForModelID ( $modelId)
 Returns the ContentHandler singleton for the given model ID.
 
static getLocalizedName ( $name, Language $lang=null)
 Returns the localized name for a given content model.
 
static makeContent ( $text, Title $title=null, $modelId=null, $format=null)
 Convenience function for creating a Content object from a given textual representation.
 
- Protected Attributes inherited from ContentHandler
string $mModelID
 
string[] $mSupportedFormats
 

Detailed Description

Content handler for JSON text.

Useful for maintaining JSON that can be viewed and edited directly by users.

Author
Ori Livneh ori@w.nosp@m.ikim.nosp@m.edia..nosp@m.org
Kunal Mehta legok.nosp@m.tm@g.nosp@m.mail..nosp@m.com
Since
1.24
Stability: stable
to extend

Definition at line 38 of file JsonContentHandler.php.

Constructor & Destructor Documentation

◆ __construct()

JsonContentHandler::__construct ( $modelId = CONTENT_MODEL_JSON)
Parameters
string$modelId
Stability: stable
to call

Definition at line 44 of file JsonContentHandler.php.

References CONTENT_FORMAT_JSON.

Member Function Documentation

◆ fillParserOutput()

JsonContentHandler::fillParserOutput ( Content $content,
ContentParseParams $cpoParams,
ParserOutput & $parserOutput )
protected

Set the HTML and add the appropriate styles.

Since
1.38
Parameters
Content$content
ContentParseParams$cpoParams
ParserOutput&$parserOutputThe output object to fill (reference).

Reimplemented from TextContentHandler.

Definition at line 113 of file JsonContentHandler.php.

References MediaWiki\Parser\ParserOutput\addModuleStyles(), MediaWiki\Content\Renderer\ContentParseParams\getGenerateHtml(), Content\isValid(), MediaWiki\Parser\ParserOutput\setRawText(), and wfMessage().

◆ getContentClass()

JsonContentHandler::getContentClass ( )
protected
Returns
class-string<JsonContent>

Reimplemented from CodeContentHandler.

Definition at line 51 of file JsonContentHandler.php.

Referenced by makeEmptyContent().

◆ makeEmptyContent()

JsonContentHandler::makeEmptyContent ( )

Creates an empty TextContent object.

Since
1.21
Returns
Content A new TextContent object with empty text.

Reimplemented from TextContentHandler.

Definition at line 55 of file JsonContentHandler.php.

References getContentClass().

◆ preSaveTransform()

JsonContentHandler::preSaveTransform ( Content $content,
PreSaveTransformParams $pstParams )

Returns a $content object with pre-save transformations applied (or the same object if no transformations apply).

Note
Not stable to call other then from ContentHandler hierarchy. Callers need to use ContentTransformer::preSaveTransform.
Stability: stable
to override
Since
1.37
Parameters
Content$content
PreSaveTransformParams$pstParams
Returns
Content

Reimplemented from TextContentHandler.

Definition at line 89 of file JsonContentHandler.php.

◆ supportsPreloadContent()

JsonContentHandler::supportsPreloadContent ( )

Enables EditPage's preload feature on .json pages as well as for extensions like MassMessage that subclass {.

See also
JsonContentHandler}.
Returns
true

Reimplemented from ContentHandler.

Definition at line 66 of file JsonContentHandler.php.

◆ validateSave()

JsonContentHandler::validateSave ( Content $content,
ValidationParams $validationParams )
Parameters
Content$content
ValidationParams$validationParams
Returns
StatusValue

Reimplemented from ContentHandler.

Definition at line 75 of file JsonContentHandler.php.

References MediaWiki\Content\ValidationParams\getPageIdentity().


The documentation for this class was generated from the following file: