MediaWiki master
|
A Module that is based on flat route definitions in the form originally introduced in MW 1.35. More...
Inherits MediaWiki\Rest\Module\MatcherBasedModule.
Public Member Functions | |||||||
__construct (array $routeFiles, array $extraRoutes, Router $router, ResponseFactory $responseFactory, BasicAuthorizerInterface $basicAuth, ObjectFactory $objectFactory, Validator $restValidator, ErrorReporter $errorReporter) | |||||||
getDefinedPaths () | |||||||
getOpenApiInfo () | |||||||
Return an array with data to be included in an OpenAPI "info" object describing this module. | |||||||
Public Member Functions inherited from MediaWiki\Rest\Module\MatcherBasedModule | |||||||
findHandlerMatch (string $path, string $requestMethod) | |||||||
Determines which handler to use for the given path and returns an array describing the handler and initialization context.
| |||||||
getAllowedMethods (string $relPath) | |||||||
Get the allowed methods for a path. | |||||||
getCacheData () | |||||||
Return data that can later be used to initialize a new instance of this module in a fast and efficient way. | |||||||
initFromCacheData (array $cacheData) | |||||||
Initialize from the given cache data if possible. | |||||||
Public Member Functions inherited from MediaWiki\Rest\Module\Module | |||||||
__construct (Router $router, string $pathPrefix, ResponseFactory $responseFactory, BasicAuthorizerInterface $basicAuth, ObjectFactory $objectFactory, Validator $restValidator, ErrorReporter $errorReporter) | |||||||
execute (string $path, RequestInterface $request) | |||||||
Find the handler for a request and execute it. | |||||||
getHandlerForPath (string $path, RequestInterface $request, bool $initForExecute=false) | |||||||
Create a Handler for the given path, taking into account the request method. | |||||||
getModuleDescription () | |||||||
Returns fields to be included when describing this module in the discovery document. | |||||||
getPathPrefix () | |||||||
getRouter () | |||||||
setCors (CorsUtils $cors) | |||||||
setStats (StatsFactory $stats) | |||||||
Protected Member Functions | |
getConfigHash () | |
Get a config version hash for cache invalidation. | |
initRoutes () | |
Initialize matchers by calling addRoute() for each known route. | |
Protected Member Functions inherited from MediaWiki\Rest\Module\MatcherBasedModule | |
addRoute ( $method, string $path, array $info) | |
getMatchers () | |
Get an array of PathMatcher objects indexed by HTTP method. | |
Protected Member Functions inherited from MediaWiki\Rest\Module\Module | |
executeHandler (Handler $handler) | |
Execute a fully-constructed handler. | |
instantiateHandlerObject (array $spec) | |
Creates a handler from the given spec, but does not initialize it. | |
throwNoMatch (string $path, string $method, array $allowed) | |
Implementations of getHandlerForPath() should call this method when they cannot handle the requested path. | |
Additional Inherited Members | |
Static Public Member Functions inherited from MediaWiki\Rest\Module\Module | |
static | loadJsonFile (string $fileName) |
Loads a module specification from a file. | |
Public Attributes inherited from MediaWiki\Rest\Module\Module | |
const | CACHE_CONFIG_HASH_KEY = 'CONFIG-HASH' |
Protected Attributes inherited from MediaWiki\Rest\Module\Module | |
string | $pathPrefix |
ResponseFactory | $responseFactory |
A Module that is based on flat route definitions in the form originally introduced in MW 1.35.
This module acts as a "catch all" since it doesn't use a module prefix. So it handles all routes that do not explicitly belong to a module.
This module responds to requests by matching the requested path against a list of known routes to identify the appropriate handler. The routes are loaded from the route definition files or in extension.json files using the RestRoutes key.
Flat files just contain a list (a JSON array) or route definitions (see below). Annotated route definition files contain a map (a JSON object) with the following fields:
Each route definition maps a path pattern to a handler class. It is given as a map (JSON object) with the following fields:
The following fields are supported as a shorthand notation:
More shorthands may be added in the future.
Route definitions can contain additional fields to configure the handler. The handler can access the route definition by calling getConfig().
Definition at line 62 of file ExtraRoutesModule.php.
MediaWiki\Rest\Module\ExtraRoutesModule::__construct | ( | array | $routeFiles, |
array | $extraRoutes, | ||
Router | $router, | ||
ResponseFactory | $responseFactory, | ||
BasicAuthorizerInterface | $basicAuth, | ||
ObjectFactory | $objectFactory, | ||
Validator | $restValidator, | ||
ErrorReporter | $errorReporter ) |
string[] | $routeFiles | List of names of JSON files containing routes See the documentation of this class for a description of the file format. |
array<int,array> | $extraRoutes Extension route array. The content of this array must be a list of route definitions. See the documentation of this class for a description of the expected structure. |
Definition at line 92 of file ExtraRoutesModule.php.
References MediaWiki\Rest\Module\Module\$responseFactory.
|
protected |
Get a config version hash for cache invalidation.
Reimplemented from MediaWiki\Rest\Module\MatcherBasedModule.
Definition at line 120 of file ExtraRoutesModule.php.
MediaWiki\Rest\Module\ExtraRoutesModule::getDefinedPaths | ( | ) |
Reimplemented from MediaWiki\Rest\Module\Module.
Definition at line 175 of file ExtraRoutesModule.php.
MediaWiki\Rest\Module\ExtraRoutesModule::getOpenApiInfo | ( | ) |
Return an array with data to be included in an OpenAPI "info" object describing this module.
Reimplemented from MediaWiki\Rest\Module\Module.
Definition at line 246 of file ExtraRoutesModule.php.
|
protected |
Initialize matchers by calling addRoute() for each known route.
Reimplemented from MediaWiki\Rest\Module\MatcherBasedModule.
Definition at line 198 of file ExtraRoutesModule.php.
References $path.