MediaWiki master
MediaWiki\Api\ApiEntryPoint Class Reference

Implementation of the API entry point, for web browser navigations, usually via an Action or SpecialPage subclass. More...

Inherits MediaWiki\MediaWikiEntryPoint.

Collaboration diagram for MediaWiki\Api\ApiEntryPoint:

Public Member Functions

 __construct (RequestContext $context, EntryPointEnvironment $environment, MediaWikiServices $services)
 
- Public Member Functions inherited from MediaWiki\MediaWikiEntryPoint
 __construct (IContextSource $context, EntryPointEnvironment $environment, MediaWikiServices $mediaWikiServices)
 
 enableOutputCapture ()
 Enable capturing of the current output buffer.
 
 getCapturedOutput ()
 Stop capturing and return all output.
 
 getRequestPathSuffix ( $basePath)
 If the request URL matches a given base path, extract the path part of the request URL after that base, and decode escape sequences in it.
 
 run ()
 Main app life cycle: Calls doSetup(), execute(), prepareForOutput(), and postOutputShutdown().
 

Protected Member Functions

 execute ()
 Executes a request to the action API.
 
 getContext ()
 Overwritten to narrow the return type to RequestContext.
 
- Protected Member Functions inherited from MediaWiki\MediaWikiEntryPoint
 commitMainTransaction ()
 This function commits all DB and session changes as needed before the client can receive a response (in case DB commit fails) and thus also before the response can trigger a subsequent related request by the client.
 
 commitOutputBuffer ()
 Ends the current output buffer, appending its content to the parent buffer.
 
 disableModDeflate ()
 
 discardAllOutput ()
 Discards all buffered output, down to the capture buffer level.
 
 discardOutputBuffer ()
 
 doPostOutputShutdown ()
 Forces the response to be sent to the client and then does work that can be done after the user gets the HTTP response, so they don't block on it.
 
 doPrepareForOutput ()
 Prepare for sending the output.
 
 doSetup ()
 Perform any setup needed before execute() is called.
 
 drainOutputBuffer ()
 Returns the content of the current output buffer and clears it.
 
 enterPostSendMode ()
 Disables all output to the client.
 
 exit (int $code=0)
 
 fastCgiFinishRequest ()
 Calls fastcgi_finish_request if possible.
 
 flushOutputBuffer ()
 Flush buffered output to the client.
 
 getBlockManager ()
 
 getConfig (string $key)
 
 getDBLoadBalancerFactory ()
 
 getEnv (string $name)
 Returns the value of an environment variable.
 
 getIni (string $name)
 Returns the value of an ini option.
 
 getJobQueueGroupFactory ()
 
 getJobRunner ()
 
 getMessageCache ()
 
 getOutputBufferLength ()
 
 getOutputBufferLevel ()
 Returns the output buffer level.
 
 getOutputBufferStatus ()
 
 getReadOnlyMode ()
 
 getRequest ()
 
 getRequestURL ()
 Returns the current request's path and query string (not a full URL), like PHP's built-in $_SERVER['REQUEST_URI'].
 
 getResponse ()
 
 getServerInfo (string $key, $default=null)
 
 getServiceContainer ()
 Returns the main service container.
 
 getSpecialPageFactory ()
 
 getStatsdDataFactory ()
 
 getStatsFactory ()
 
 getStatusCode ()
 
 getUrlUtils ()
 
 handleTopLevelError (Throwable $e)
 Report a top level error.
 
 hasFastCgi ()
 
 header (string $header, bool $replace=true, int $status=0)
 
 inPostSendMode ()
 Whether enterPostSendMode() has been called.
 
 isCli ()
 
 outputResponsePayload ( $content)
 Print a response body to the current buffer (if there is one) or the server (otherwise)
 
 postOutputShutdown ()
 Forces the response to be sent to the client and then does work that can be done after the user gets the HTTP response, so they don't block on it.
 
 prepareForOutput ()
 Prepare for sending the output.
 
 print ( $data)
 
 restInPeace ()
 Ends this task peacefully.
 
 schedulePostSendJobs ()
 If enabled, after everything specific to this request is done, occasionally run jobs.
 
 setIniOption (string $name, $value)
 
 setup ()
 Perform any setup needed before execute() is called.
 
 shouldDoHttpRedirect ()
 Check if an HTTP->HTTPS redirect should be done.
 
 startOutputBuffer (?callable $callback=null)
 Adds a new output buffer level.
 
 status (int $code)
 
 triggerAsyncJobs ( $n, LoggerInterface $runJobsLogger)
 
 triggerError (string $message, int $level=E_USER_NOTICE)
 Triggers a PHP runtime error.
 
 triggerSyncJobs ( $n)
 

Additional Inherited Members

- Static Public Member Functions inherited from MediaWiki\MediaWikiEntryPoint
static emitBufferedStatsdData (IBufferingStatsdDataFactory $stats, Config $config)
 Send out any buffered statsd data according to sampling rules.
 
- Protected Attributes inherited from MediaWiki\MediaWikiEntryPoint
EntryPointEnvironment $environment
 

Detailed Description

Implementation of the API entry point, for web browser navigations, usually via an Action or SpecialPage subclass.

This is used by bots to fetch content and information about the wiki, its pages, and its users. See https://www.mediawiki.org/wiki/API for more information.

See also
/api.php The corresponding HTTP entry point.
Access: internal

Definition at line 53 of file ApiEntryPoint.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\Api\ApiEntryPoint::__construct ( RequestContext $context,
EntryPointEnvironment $environment,
MediaWikiServices $services )

Definition at line 55 of file ApiEntryPoint.php.

References MediaWiki\MediaWikiEntryPoint\$environment.

Member Function Documentation

◆ execute()

MediaWiki\Api\ApiEntryPoint::execute ( )
protected

Executes a request to the action API.

It begins by constructing a new ApiMain using the parameter passed to it as an argument in the URL ('?action='). It then invokes "execute()" on the ApiMain object instance, which produces output in the format specified in the URL.

Reimplemented from MediaWiki\MediaWikiEntryPoint.

Definition at line 87 of file ApiEntryPoint.php.

References $wgTitle, MediaWiki\MainConfigNames\APIRequestLog, MediaWiki\Logger\LegacyLogger\emit(), getContext(), getRequest(), ApiMain\handleApiBeforeMainException(), NS_SPECIAL, PROTO_CANONICAL, wfAppendQuery(), wfArrayToCgi(), wfDebug(), wfScript(), and wfTimestamp().

◆ getContext()

MediaWiki\Api\ApiEntryPoint::getContext ( )
protected

Overwritten to narrow the return type to RequestContext.

Returns
RequestContext

Reimplemented from MediaWiki\MediaWikiEntryPoint.

Definition at line 71 of file ApiEntryPoint.php.


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