MediaWiki
1.32.5
|
The MediaWiki class is the helper class for the index.php entry point. More...
Classes | |
class | MediaWikiServices |
MediaWikiServices is the service locator for the application scope of MediaWiki. More... | |
class | OutputHandler |
Public Member Functions | |
__construct (IContextSource $context=null) | |
doPostOutputShutdown ( $mode='normal') | |
This function does work that can be done after the user gets the HTTP response so they don't block on it. More... | |
doPreOutputCommit (callable $postCommitWork=null) | |
getAction () | |
Returns the name of the action that will be executed. More... | |
getTitle () | |
Get the Title object that we'll be acting on, as specified in the WebRequest. More... | |
restInPeace ( $mode='fast', $blocksHttpClient=true) | |
Ends this task peacefully. More... | |
run () | |
Run the current MediaWiki instance; index.php just calls this. More... | |
triggerJobs () | |
Potentially open a socket and sent an HTTP request back to the server to run a specified number of jobs. More... | |
Static Public Member Functions | |
static | emitBufferedStatsdData (IBufferingStatsdDataFactory $stats, Config $config) |
Send out any buffered statsd data according to sampling rules. More... | |
static | preOutputCommit (IContextSource $context, callable $postCommitWork=null) |
This function commits all DB changes as needed before the user can receive a response (in case commit fails) More... | |
Private Member Functions | |
initializeArticle () | |
Initialize the main Article object for "standard" actions (view, etc) Create an Article object for the page, following redirects if needed. More... | |
main () | |
parseTitle () | |
Parse the request to get the Title object. More... | |
performAction (Page $page, Title $requestTitle) | |
Perform one of the "standard" actions. More... | |
performRequest () | |
Performs the request. More... | |
setDBProfilingAgent () | |
triggerAsyncJobs ( $n, LoggerInterface $runJobsLogger) | |
triggerSyncJobs ( $n, LoggerInterface $runJobsLogger) | |
tryNormaliseRedirect (Title $title) | |
Handle redirects for uncanonical title requests. More... | |
Static Private Member Functions | |
static | getUrlDomainDistance ( $url) |
Private Attributes | |
String | $action |
Cache what action this request is. More... | |
Config | $config |
IContextSource | $context |
The MediaWiki class is the helper class for the index.php entry point.
Definition at line 34 of file MediaWiki.php.
MediaWiki::__construct | ( | IContextSource | $context = null | ) |
IContextSource | null | $context |
Definition at line 53 of file MediaWiki.php.
References $context, IContextSource\getConfig(), and RequestContext\getMain().
MediaWiki::doPostOutputShutdown | ( | $mode = 'normal' | ) |
This function does work that can be done after the user gets the HTTP response so they don't block on it.
This manages deferred updates, job insertion, final commit, and the logging of profiling data
string | $mode | Use 'fast' to always skip job running |
Definition at line 706 of file MediaWiki.php.
References $e, WebResponse\disableForPostSend(), Profiler\instance(), register_postsend_function(), restInPeace(), MWExceptionHandler\rollbackMasterChangesAndLog(), and use.
Referenced by run().
MediaWiki::doPreOutputCommit | ( | callable | $postCommitWork = null | ) |
callable | null | $postCommitWork | [default: null] |
Definition at line 567 of file MediaWiki.php.
References preOutputCommit().
|
static |
Send out any buffered statsd data according to sampling rules.
IBufferingStatsdDataFactory | $stats | |
Config | $config |
ConfigException |
Definition at line 929 of file MediaWiki.php.
References $config, IBufferingStatsdDataFactory\clearData(), Config\get(), IBufferingStatsdDataFactory\getData(), IBufferingStatsdDataFactory\hasData(), and MWExceptionHandler\logException().
Referenced by Maintenance\output(), Maintenance\setLBFactoryTriggers(), and wfLogProfilingData().
MediaWiki::getAction | ( | ) |
Returns the name of the action that will be executed.
Definition at line 153 of file MediaWiki.php.
References $action, captcha-old\action, and Action\getActionName().
Referenced by main(), and performAction().
MediaWiki::getTitle | ( | ) |
Get the Title object that we'll be acting on, as specified in the WebRequest.
Definition at line 137 of file MediaWiki.php.
References SpecialPage\getTitleFor(), and parseTitle().
Referenced by ProtectionForm\buildForm(), Linker\buildRollbackLink(), SimpleCaptcha\confirmEditMerged(), SpamBlacklistHooks\filterMergedContent(), CacheHelper\getCachedNotice(), WikitextContent\isCountable(), HTMLFileCache\loadFromFileCache(), main(), SpamBlacklistHooks\onArticleDeleteComplete(), GadgetHooks\onEditFilterMergedContent(), UserNotLoggedIn\report(), WikiPageDbTestBase\testDoDeleteArticleReal_suppress(), WikiPageDbTestBase\testDoDeleteArticleReal_userSysop(), RequestContextTest\testWikiPageTitle(), and triggerJobs().
|
staticprivate |
string | $url |
Definition at line 685 of file MediaWiki.php.
References WikiMap\getWikiFromUrl(), and wfWikiID().
Referenced by preOutputCommit().
|
private |
Initialize the main Article object for "standard" actions (view, etc) Create an Article object for the page, following redirects if needed.
Definition at line 383 of file MediaWiki.php.
References $action, $article, $request, $title, WikiPage\factory(), ContentHandler\getForTitle(), ContextSource\getTitle(), Article\newFromWikiPage(), Hooks\run(), and wfWarn().
Referenced by performRequest().
|
private |
Definition at line 753 of file MediaWiki.php.
References $action, $buffer, $cache, $output, $request, $title, $wgTitle, doPreOutputCommit(), getAction(), getTitle(), Profiler\instance(), Title\makeTitle(), Title\newFromText(), NS_MAIN, NS_SPECIAL, performRequest(), PROTO_HTTPS, Hooks\run(), use, HTMLFileCache\useFileCache(), wfDebugLog(), and wfExpandUrl().
Referenced by run().
|
private |
Parse the request to get the Title object.
MalformedTitleException | If a title has been provided by the user, but is invalid. |
Definition at line 68 of file MediaWiki.php.
References $action, $request, $ret, $rev, $title, MediaWiki\MediaWikiServices\getInstance(), SpecialPage\getTitleFor(), Title\makeTitle(), Revision\newFromId(), Title\newFromID(), Title\newFromTextThrow(), Title\newFromURL(), Title\newMainPage(), NS_FILE, and NS_MEDIA.
Referenced by getTitle(), and performRequest().
Perform one of the "standard" actions.
Definition at line 466 of file MediaWiki.php.
References $action, $output, $request, $title, $user, Action\factory(), getAction(), Title\getCdnUrls(), Profiler\instance(), PROTO_INTERNAL, Hooks\run(), and wfExpandUrl().
Referenced by performRequest().
|
private |
Performs the request.
MWException|PermissionsError|BadTitleError|HttpError |
Definition at line 173 of file MediaWiki.php.
References $article, $output, $query, $request, $title, $user, $wgTitle, captcha-old\action, captcha-old\count, MediaWiki\MediaWikiServices\getInstance(), SpecialPage\getTitleFor(), initializeArticle(), list, parseTitle(), performAction(), Hooks\run(), and tryNormaliseRedirect().
Referenced by main().
|
static |
This function commits all DB changes as needed before the user can receive a response (in case commit fails)
IContextSource | $context | |
callable | null | $postCommitWork | [default: null] |
Definition at line 579 of file MediaWiki.php.
References $config, $context, $e, $options, $output, $request, $value, DeferredUpdates\doUpdates(), Config\get(), IContextSource\getConfig(), MediaWiki\MediaWikiServices\getInstance(), IContextSource\getOutput(), IContextSource\getRequest(), getUrlDomainDistance(), MWExceptionHandler\logException(), Wikimedia\Rdbms\LBFactory\makeCookieValueFromCPIndex(), DeferredUpdates\PRESEND, MessageCache\singleton(), wfDebug(), and wfDebugLog().
Referenced by doPreOutputCommit(), and ApiMain\executeActionWithErrorHandling().
MediaWiki::restInPeace | ( | $mode = 'fast' , |
|
$blocksHttpClient = true |
|||
) |
Ends this task peacefully.
string | $mode | Use 'fast' to always skip job running |
bool | $blocksHttpClient | Whether this blocks an HTTP response to a client |
Definition at line 887 of file MediaWiki.php.
References DeferredUpdates\doUpdates(), MediaWiki\MediaWikiServices\getInstance(), Profiler\instance(), Wikimedia\Rdbms\ILBFactory\SHUTDOWN_NO_CHRONPROT, triggerJobs(), wfDebug(), and wfLogProfilingData().
Referenced by doPostOutputShutdown().
MediaWiki::run | ( | ) |
Run the current MediaWiki instance; index.php just calls this.
Definition at line 513 of file MediaWiki.php.
References $action, $cache, $context, $e, doPostOutputShutdown(), doPreOutputCommit(), MWExceptionRenderer\getHTML(), IContextSource\getRequest(), IContextSource\getTitle(), MWExceptionHandler\handleException(), main(), HTMLFileCache\MODE_OUTAGE, ErrorPageError\report(), setDBProfilingAgent(), and HTMLFileCache\useFileCache().
|
private |
Definition at line 553 of file MediaWiki.php.
References $name, $services, and MediaWiki\MediaWikiServices\getInstance().
Referenced by run().
|
private |
int | $n | Number of jobs to try to run |
LoggerInterface | $runJobsLogger |
Definition at line 1012 of file MediaWiki.php.
References $query, $req, MediaWiki\MediaWikiServices\getInstance(), SpecialRunJobs\getQuerySignature(), JobQueueGroup\singleton(), JobQueueGroup\TYPE_DEFAULT, and wfParseUrl().
Referenced by triggerJobs().
MediaWiki::triggerJobs | ( | ) |
Potentially open a socket and sent an HTTP request back to the server to run a specified number of jobs.
This registers a callback to cleanup the socket once it's done.
Definition at line 954 of file MediaWiki.php.
References $e, getTitle(), MWExceptionHandler\logException(), triggerAsyncJobs(), triggerSyncJobs(), and wfReadOnly().
Referenced by restInPeace().
|
private |
int | $n | Number of jobs to try to run |
LoggerInterface | $runJobsLogger |
Definition at line 996 of file MediaWiki.php.
References Profiler\instance().
Referenced by triggerJobs().
|
private |
Handle redirects for uncanonical title requests.
Handles:
Behaviour:
Title | $title |
HttpError |
Definition at line 327 of file MediaWiki.php.
References $name, $output, $request, $title, captcha-old\count, MediaWiki\MediaWikiServices\getInstance(), SpecialPage\getTitleFor(), list, PROTO_CURRENT, Hooks\run(), and wfExpandUrl().
Referenced by performRequest().
|
private |
Cache what action this request is.
Definition at line 48 of file MediaWiki.php.
Referenced by MediaWiki\Auth\AuthManager\fillRequests(), getAction(), MediaWiki\Auth\TemporaryPasswordPrimaryAuthenticationProvider\getAuthenticationRequests(), MediaWiki\Auth\AbstractPasswordPrimaryAuthenticationProvider\getAuthenticationRequests(), MediaWiki\Auth\AuthPluginPrimaryAuthenticationProvider\getAuthenticationRequests(), MediaWiki\Auth\AuthManager\getAuthenticationRequests(), initializeArticle(), main(), parseTitle(), performAction(), run(), MediaWiki\Auth\ConfirmLinkSecondaryAuthenticationProviderTest\testGetAuthenticationRequests(), MediaWiki\Auth\ResetPasswordSecondaryAuthenticationProviderTest\testGetAuthenticationRequests(), MediaWiki\Auth\EmailNotificationSecondaryAuthenticationProviderTest\testGetAuthenticationRequests(), MediaWiki\Auth\CheckBlocksSecondaryAuthenticationProviderTest\testGetAuthenticationRequests(), MediaWiki\Auth\AuthPluginPrimaryAuthenticationProviderTest\testGetAuthenticationRequests(), MediaWiki\Auth\TemporaryPasswordPrimaryAuthenticationProviderTest\testGetAuthenticationRequests(), MediaWiki\Auth\AbstractPasswordPrimaryAuthenticationProviderTest\testGetAuthenticationRequests(), MediaWiki\Auth\AuthManagerTest\testGetAuthenticationRequests(), MediaWiki\Auth\AuthManagerTest\testGetAuthenticationRequestsRequired(), MediaWiki\Auth\PasswordDomainAuthenticationRequestTest\testGetFieldInfo2(), MediaWiki\Auth\PasswordAuthenticationRequestTest\testGetFieldInfo2(), and MediaWiki\Preferences\DefaultPreferencesFactory\watchlistPreferences().
|
private |
Definition at line 43 of file MediaWiki.php.
Referenced by MediaWiki\Widget\UserInputWidget\__construct(), MediaWiki\Widget\NamespaceInputWidget\__construct(), MediaWiki\Widget\ComplexTitleInputWidget\__construct(), MediaWiki\Widget\UsersMultiselectWidget\__construct(), MediaWiki\Widget\DateTimeInputWidget\__construct(), MediaWiki\Widget\SizeFilterWidget\__construct(), MediaWiki\Widget\SelectWithInputWidget\__construct(), MediaWiki\Widget\SearchInputWidget\__construct(), MediaWiki\Widget\TitleInputWidget\__construct(), MediaWiki\Widget\ExpiryInputWidget\__construct(), MediaWiki\Widget\CheckMatrixWidget\__construct(), MediaWiki\Widget\DateInputWidget\__construct(), MediaWiki\Auth\Throttler\__construct(), MediaWiki\Config\ConfigRepository\add(), emitBufferedStatsdData(), MediaWiki\Widget\UserInputWidget\getConfig(), MediaWiki\Widget\UsersMultiselectWidget\getConfig(), MediaWiki\Widget\DateTimeInputWidget\getConfig(), MediaWiki\Widget\NamespaceInputWidget\getConfig(), MediaWiki\Widget\ComplexTitleInputWidget\getConfig(), MediaWiki\Widget\ExpiryInputWidget\getConfig(), MediaWiki\Widget\TitleInputWidget\getConfig(), MediaWiki\Widget\SelectWithInputWidget\getConfig(), MediaWiki\Widget\SearchInputWidget\getConfig(), MediaWiki\Widget\SizeFilterWidget\getConfig(), MediaWiki\Widget\DateInputWidget\getConfig(), MediaWiki\Widget\CheckMatrixWidget\getConfig(), MediaWiki\Config\ConfigRepository\getDescriptionOf(), MediaWiki\Auth\UserDataAuthenticationRequest\getFieldInfo(), MediaWiki\Widget\DateInputWidget\getInputElement(), MediaWiki\Widget\NamespaceInputWidget\getNamespaceDropdownOptions(), MediaWiki\Session\ImmutableSessionProviderWithCookieTest\getProvider(), MediaWiki\Config\ConfigRepository\getValueOf(), MediaWiki\Auth\TemporaryPasswordAuthenticationRequest\newRandom(), preOutputCommit(), MediaWiki\Session\SessionProviderTest\testBasics(), MediaWiki\Auth\EmailNotificationSecondaryAuthenticationProviderTest\testConstructor(), MediaWiki\Auth\CheckBlocksSecondaryAuthenticationProviderTest\testConstructor(), MediaWiki\Auth\ThrottlePreAuthenticationProviderTest\testConstructor(), MediaWiki\Session\CookieSessionProviderTest\testConstructor(), MediaWiki\Auth\ConfirmLinkSecondaryAuthenticationProviderTest\testContinueLinkAttempt(), MediaWiki\Session\CookieSessionProviderTest\testCookieData(), MediaWiki\Session\CookieSessionProviderTest\testGetLoginCookieExpiration(), MediaWiki\Auth\AbstractPasswordPrimaryAuthenticationProviderTest\testGetNewPasswordExpiry(), MediaWiki\Session\CookieSessionProviderTest\testGetRememberUserDuration(), MediaWiki\Session\SessionProviderTest\testHashToSessionId(), MediaWiki\Session\CookieSessionProviderTest\testPersistSession(), MediaWiki\Auth\AbstractPasswordPrimaryAuthenticationProviderTest\testSetPasswordResetFlag(), MediaWiki\Logger\LegacyLoggerTest\testShouldEmit(), and MediaWiki\Auth\ResetPasswordSecondaryAuthenticationProviderTest\testTryReset().
|
private |
Definition at line 38 of file MediaWiki.php.
Referenced by __construct(), MediaWiki\Shell\Command\__destruct(), MediaWiki\Special\SpecialPageFactory\capturePath(), MediaWiki\Preferences\DefaultPreferencesFactory\datetimePreferences(), MediaWiki\Logger\LegacyLogger\destination(), MediaWiki\Special\SpecialPageFactory\executePath(), MediaWiki\Logger\Monolog\LogstashFormatter\fixKeyConflicts(), MediaWiki\Logger\LegacyLogger\format(), MediaWiki\Logger\LegacyLogger\formatAsWfDebug(), MediaWiki\Logger\Monolog\LogstashFormatter\formatV0(), MediaWiki\Logger\Monolog\LogstashFormatter\formatV1(), MediaWiki\Preferences\DefaultPreferencesFactory\generateSkinOptions(), MediaWiki\Preferences\DefaultPreferencesFactory\getDateOptions(), MediaWiki\Preferences\DefaultPreferencesFactory\getForm(), MediaWiki\Preferences\DefaultPreferencesFactory\getFormDescriptor(), MediaWiki\Preferences\DefaultPreferencesFactory\getTimezoneOptions(), MediaWiki\Logger\LegacyLogger\interpolate(), MediaWiki\Preferences\DefaultPreferencesFactory\loadPreferenceValues(), MediaWiki\Logger\ConsoleLogger\log(), MediaWiki\Logger\LegacyLogger\log(), MediaWiki\Auth\Throttler\logRejection(), preOutputCommit(), MediaWiki\Preferences\DefaultPreferencesFactory\profilePreferences(), run(), MediaWiki\Logger\LegacyLogger\shouldEmit(), MediaWiki\Preferences\DefaultPreferencesFactory\skinPreferences(), MediaWiki\Preferences\DefaultPreferencesFactory\submitForm(), MediaWiki\Session\SessionManagerTest\testGetGlobalSession(), MediaWiki\Logger\LegacyLoggerTest\testInterpolate(), MediaWiki\Auth\AuthManagerTest\testSetDefaultUserOptions(), MediaWiki\Logger\Monolog\KafkaHandler\warning(), and MediaWiki\Preferences\DefaultPreferencesFactory\watchlistPreferences().