|
MediaWiki REL1_39
|
Base class for Parsoid handlers. More...


Public Member Functions | |
| __construct (array $parsoidSettings, SiteConfig $siteConfig, PageConfigFactory $pageConfigFactory, DataAccess $dataAccess) | |
| execute () | |
Execute the handler.This is called after parameter validation. The return value can either be a Response or any type accepted by ResponseFactory::createFromReturnValue().To automatically construct an error response, execute() should throw a \MediaWiki\Rest\HttpException. Such exceptions will not be logged like a normal exception.If execute() throws any other kind of exception, the exception will be logged and a generic 500 error page will be shown.
| |
Public Member Functions inherited from MediaWiki\Rest\Handler | |
| applyConditionalResponseHeaders (ResponseInterface $response) | |
| Apply verifier headers to the response, per RFC 7231 ยง7.2. | |
| checkPreconditions () | |
| Check the conditional request headers and generate a response if appropriate. | |
| checkSession () | |
| Check the session (and session provider) | |
| getAuthority () | |
| Get the current acting authority. | |
| getBodyValidator ( $contentType) | |
| Fetch the BodyValidator. | |
| getConfig () | |
| Get the configuration array for the current route. | |
| getParamSettings () | |
| Fetch ParamValidator settings for parameters. | |
| getRequest () | |
| Get the current request. | |
| getResponseFactory () | |
| Get the ResponseFactory which can be used to generate Response objects. | |
| getSession () | |
| Get the Session. | |
| getValidatedBody () | |
| Fetch the validated body. | |
| getValidatedParams () | |
| Fetch the validated parameters. | |
| init (Router $router, RequestInterface $request, array $config, Authority $authority, ResponseFactory $responseFactory, HookContainer $hookContainer, Session $session) | |
| Initialise with dependencies from the Router. | |
| needsReadAccess () | |
| Indicates whether this route requires read rights. | |
| needsWriteAccess () | |
| Indicates whether this route requires write access. | |
| requireSafeAgainstCsrf () | |
| Indicates whether this route can be accessed only by session providers safe vs csrf. | |
| validate (Validator $restValidator) | |
| Validate the request parameters/attributes and body. | |
Static Public Member Functions | |
| static | factory () |
Protected Member Functions | |
| acceptable (array &$attribs) | |
| This method checks if we support the requested content formats As a side-effect, it updates $attribs to set outputContentVersion that Parsoid should generate based on request headers. | |
| assertDomainIsCorrect ( $domain) | |
| Verify that the {domain} path parameter matches the actual domain. | |
| createPageConfig (string $title, ?int $revision, ?string $wikitextOverride=null, ?string $pagelanguageOverride=null) | |
| createRedirectResponse (string $path, array $pathParams=[], array $queryParams=[]) | |
| Redirect to another Parsoid URL (e.g. | |
| createRedirectToOldidResponse (PageConfig $pageConfig, array $attribs) | |
| Expand the current URL with the latest revision number and redirect there. | |
| getHTMLTransform (array $attribs, string $html, PageConfig $pageConfig, array $parsoidSettings) | |
| getPageContentEndpoint (string $format=ParsoidFormatHelper::FORMAT_HTML) | |
| Get the path for the page content endpoint. | |
| getParsedBody () | |
| Get the parsed body by content-type. | |
| getRedirectRouteUrl (string $path, array $pathParams=[], array $queryParams=[]) | |
| Returns the target URL for a redirect to the given path and parameters. | |
| & | getRequestAttributes () |
| Rough equivalent of req.local from Parsoid-JS. | |
| getRevisionContentEndpoint (string $format=ParsoidFormatHelper::FORMAT_HTML) | |
| Get the path for the page content endpoint. | |
| getTransformEndpoint (string $format=ParsoidFormatHelper::FORMAT_HTML) | |
| Get the path for the transform endpoint. | |
| html2wt (PageConfig $pageConfig, array $attribs, string $html) | |
| languageConversion (PageConfig $pageConfig, array $attribs, array $revision) | |
| Do variant conversion on a document. | |
| newParsoid () | |
| parseHTML (string $html, bool $validateXMLNames=false) | |
| pb2pb (array $attribs) | |
| Pagebundle -> pagebundle helper. | |
| tryToCreatePageConfig (array $attribs, ?string $wikitext=null, bool $html2WtMode=false) | |
| Try to create a PageConfig object. | |
| updateRedLinks (PageConfig $pageConfig, array $attribs, array $revision) | |
| Update red links on a document. | |
| wt2html (PageConfig $pageConfig, array $attribs, ?string $wikitext=null) | |
| Wikitext -> HTML helper. | |
Protected Member Functions inherited from MediaWiki\Rest\Handler | |
| getConditionalHeaderUtil () | |
| Get a ConditionalHeaderUtil object. | |
| getETag () | |
| The subclass should override this to provide an ETag for the current state of the requested resource. | |
| getHookContainer () | |
| Get a HookContainer, for running extension hooks or for hook metadata. | |
| getHookRunner () | |
| Get a HookRunner for running core hooks. | |
| getLastModified () | |
| The subclass should override this to provide the maximum last modified timestamp of the requested resource. | |
| getRouter () | |
| Get the Router. | |
| getRouteUrl ( $pathParams=[], $queryParams=[]) | |
| Get the URL of this handler's endpoint. | |
| hasRepresentation () | |
| The subclass should override this to indicate whether the resource exists. | |
| postInitSetup () | |
| The handler can override this to do any necessary setup after init() is called to inject the dependencies. | |
| postValidationSetup () | |
| The handler can override this to do any necessary setup after validate() has been called. | |
| urlEncodeTitle ( $title) | |
| URL-encode titles in a "pretty" way. | |
Protected Attributes | |
| DataAccess | $dataAccess |
| ExtensionRegistry | $extensionRegistry |
| StatsdDataFactoryInterface | $metrics |
| A statistics aggregator. | |
| PageConfigFactory | $pageConfigFactory |
| SiteConfig | $siteConfig |
Additional Inherited Members | |
Public Attributes inherited from MediaWiki\Rest\Handler | |
| const | PARAM_SOURCE = 'rest-param-source' |
| (string) ParamValidator constant to specify the source of the parameter. | |
Base class for Parsoid handlers.
Definition at line 64 of file ParsoidHandler.php.
| MediaWiki\Rest\Handler\ParsoidHandler::__construct | ( | array | $parsoidSettings, |
| SiteConfig | $siteConfig, | ||
| PageConfigFactory | $pageConfigFactory, | ||
| DataAccess | $dataAccess ) |
| array | $parsoidSettings | |
| SiteConfig | $siteConfig | |
| PageConfigFactory | $pageConfigFactory | |
| DataAccess | $dataAccess |
Definition at line 110 of file ParsoidHandler.php.
|
protected |
This method checks if we support the requested content formats As a side-effect, it updates $attribs to set outputContentVersion that Parsoid should generate based on request headers.
| array | &$attribs | Request attributes from getRequestAttributes() |
Definition at line 342 of file ParsoidHandler.php.
|
protected |
Verify that the {domain} path parameter matches the actual domain.
| string | $domain | Domain name parameter to validate |
Definition at line 131 of file ParsoidHandler.php.
References MediaWiki\Rest\Handler\getConfig().
|
protected |
| string | $title | The page to be transformed |
| ?int | $revision | The revision to be transformed |
| ?string | $wikitextOverride | Custom wikitext to use instead of the real content of the page. |
| ?string | $pagelanguageOverride |
Definition at line 405 of file ParsoidHandler.php.
|
protected |
Redirect to another Parsoid URL (e.g.
canonization)
| string | $path | Target URL |
| array | $pathParams | Path parameters to inject into path |
| array | $queryParams | Query parameters |
Definition at line 456 of file ParsoidHandler.php.
|
protected |
Expand the current URL with the latest revision number and redirect there.
| PageConfig | $pageConfig | |
| array | $attribs | Request attributes from getRequestAttributes() |
Definition at line 601 of file ParsoidHandler.php.
|
abstract |
Execute the handler.This is called after parameter validation. The return value can either be a Response or any type accepted by ResponseFactory::createFromReturnValue().To automatically construct an error response, execute() should throw a \MediaWiki\Rest\HttpException. Such exceptions will not be logged like a normal exception.If execute() throws any other kind of exception, the exception will be logged and a generic 500 error page will be shown.
Reimplemented from MediaWiki\Rest\Handler.
Reimplemented in MediaWiki\Rest\Handler\TransformHandler.
|
static |
Definition at line 93 of file ParsoidHandler.php.
|
protected |
Definition at line 272 of file ParsoidHandler.php.
References MediaWiki\Parser\Parsoid\HTMLTransform\setMetrics().
|
protected |
Get the path for the page content endpoint.
May be overwritten to override the path.
This is done in the parsoid extension, for backwards compatibility with the old endpoint URLs.
| string | $format | The format the endpoint is expected to return. |
Definition at line 568 of file ParsoidHandler.php.
|
protected |
Get the parsed body by content-type.
Definition at line 177 of file ParsoidHandler.php.
|
protected |
Returns the target URL for a redirect to the given path and parameters.
This exists so subclasses can override it to control whether the redirect should go to a private or to a public URL.
| string | $path | |
| array | $pathParams | |
| array | $queryParams |
Definition at line 490 of file ParsoidHandler.php.
References $path.
|
protected |
Rough equivalent of req.local from Parsoid-JS.
FIXME most of these should be replaced with more native ways of handling the request.
Definition at line 200 of file ParsoidHandler.php.
|
protected |
Get the path for the page content endpoint.
May be overwritten to override the path.
This is done in the parsoid extension, for backwards compatibility with the old endpoint URLs.
| string | $format | The format the endpoint is expected to return. |
Definition at line 587 of file ParsoidHandler.php.
|
protected |
Get the path for the transform endpoint.
May be overwritten to override the path.
This is done in the parsoid extension, for backwards compatibility with the old endpoint URLs.
| string | $format | The format the endpoint is expected to return. |
Definition at line 552 of file ParsoidHandler.php.
|
protected |
| PageConfig | $pageConfig | |
| array | $attribs | Attributes gotten from requests |
| string | $html | Original HTML |
| HttpException |
Definition at line 864 of file ParsoidHandler.php.
|
protected |
Do variant conversion on a document.
| PageConfig | $pageConfig | |
| array | $attribs | |
| array | $revision |
| HttpException |
Definition at line 1033 of file ParsoidHandler.php.
References $source.
|
protected |
Definition at line 848 of file ParsoidHandler.php.
|
protected |
Definition at line 852 of file ParsoidHandler.php.
|
protected |
Pagebundle -> pagebundle helper.
| array<string,array|string> | $attribs |
| HttpException |
Definition at line 888 of file ParsoidHandler.php.
|
protected |
Try to create a PageConfig object.
If we get an exception (because content may be missing or inaccessible), throw an appropriate HTTP response object for callers to handle.
| array | $attribs | |
| ?string | $wikitext | |
| bool | $html2WtMode |
| HttpException |
Definition at line 507 of file ParsoidHandler.php.
|
protected |
Update red links on a document.
| PageConfig | $pageConfig | |
| array | $attribs | |
| array | $revision |
Definition at line 997 of file ParsoidHandler.php.
|
protected |
Wikitext -> HTML helper.
Spec'd in https://phabricator.wikimedia.org/T75955 and the API tests.
| PageConfig | $pageConfig | |
| array | $attribs | Request attributes from getRequestAttributes() |
| ?string | $wikitext | Wikitext to transform (or null to use the page specified in the request attributes). |
Definition at line 641 of file ParsoidHandler.php.
References $content.
|
protected |
Definition at line 79 of file ParsoidHandler.php.
|
protected |
Definition at line 82 of file ParsoidHandler.php.
|
protected |
A statistics aggregator.
Definition at line 85 of file ParsoidHandler.php.
|
protected |
Definition at line 76 of file ParsoidHandler.php.
|
protected |
Definition at line 73 of file ParsoidHandler.php.