MediaWiki
master
|
Group all the pieces relevant to the context of a request into one instance @newable. More...
Public Member Functions | |
canUseWikiPage () | |
Check whether a WikiPage object can be get with getWikiPage(). More... | |
exportSession () | |
Export the resolved user IP, HTTP headers, user ID, and session ID. More... | |
getAuthority () | |
@unstable More... | |
getConfig () | |
getLanguage () | |
Get the Language object. More... | |
getOutput () | |
getRequest () | |
getSkin () | |
getStats () | |
getTiming () | |
getTitle () | |
getUser () | |
getWikiPage () | |
Get the WikiPage object. More... | |
hasTitle () | |
Check, if a Title object is set. More... | |
msg ( $key,... $params) | |
Get a Message object with context set Parameters are the same as wfMessage() More... | |
setAuthority (Authority $authority) | |
@unstable More... | |
setConfig (Config $config) | |
setLanguage ( $language) | |
setOutput (OutputPage $output) | |
setRequest (WebRequest $request) | |
setSkin (Skin $skin) | |
setTitle (Title $title=null) | |
setUser (User $user) | |
setWikiPage (WikiPage $wikiPage) | |
Static Public Member Functions | |
static | getMain () |
Get the RequestContext object associated with the main request. More... | |
static | getMainAndWarn ( $func=__METHOD__) |
Get the RequestContext object associated with the main request and gives a warning to the log, to find places, where a context maybe is missing. More... | |
static | importScopedSession (array $params) |
Import an client IP address, HTTP headers, user ID, and session ID. More... | |
static | newExtraneousContext (Title $title, $request=[]) |
Create a new extraneous context. More... | |
static | resetMain () |
Resets singleton returned by getMain(). More... | |
static | sanitizeLangCode ( $code) |
Accepts a language code and ensures it's sane. More... | |
Private Attributes | |
Authority | $authority |
Config | $config |
Language | $lang |
bool | $languageRecursion = false |
Boolean flag to guard against recursion in getLanguage. More... | |
OutputPage | $output |
WebRequest | $request |
Skin | $skin |
Timing | $timing |
Title | $title |
User | $user |
WikiPage | $wikipage |
Static Private Attributes | |
static RequestContext | $instance = null |
Group all the pieces relevant to the context of a request into one instance @newable.
Definition at line 40 of file RequestContext.php.
RequestContext::canUseWikiPage | ( | ) |
Check whether a WikiPage object can be get with getWikiPage().
Callers should expect that an exception is thrown from getWikiPage() if this method returns false.
Implements IContextSource.
Definition at line 213 of file RequestContext.php.
References $title, Title\canExist(), and getTitle().
RequestContext::exportSession | ( | ) |
Export the resolved user IP, HTTP headers, user ID, and session ID.
The result will be reasonably sized to allow for serialization.
Implements IContextSource.
Definition at line 516 of file RequestContext.php.
References MediaWiki\Session\SessionManager\getGlobalSession(), getRequest(), and getUser().
RequestContext::getAuthority | ( | ) |
@unstable
Implements IContextSource.
Definition at line 309 of file RequestContext.php.
References getUser().
Referenced by MediaWiki\Rest\EntryPoint\createRouter().
RequestContext::getConfig | ( | ) |
Implements IContextSource.
Definition at line 114 of file RequestContext.php.
References $config.
Referenced by getLanguage(), and getSkin().
RequestContext::getLanguage | ( | ) |
Get the Language object.
Initialization of user or request objects can depend on this.
LogicException |
Implements IContextSource.
Definition at line 361 of file RequestContext.php.
References $lang, $request, $user, getConfig(), User\getOption(), WebRequest\getRawVal(), getRequest(), getUser(), Hooks\runner(), and sanitizeLangCode().
|
static |
Get the RequestContext object associated with the main request.
Definition at line 476 of file RequestContext.php.
References $instance.
Referenced by ApiMain\__construct(), PermissionsError\__construct(), CliInstaller\__construct(), UserBlockedError\__construct(), UploadStash\__construct(), MediaWiki\__construct(), LogFormatter\__construct(), MediaWiki\Session\SessionBackend\__construct(), MediaWiki\Session\PHPSessionHandler\__construct(), StubUserLang\_newObject(), MediaWiki\Block\AbstractBlock\appliesToRight(), MediaWiki\Block\AbstractBlock\appliesToUsertalk(), Linker\buildRollbackLink(), ChangeTags\buildTagFilterSelector(), MediaWiki\SpecialPage\SpecialPageFactory\capturePath(), MediaWiki\Auth\AuthManager\checkAccountCreatePermissions(), MediaWiki\Permissions\PermissionManager\checkUserBlock(), UploadBase\checkWarnings(), Parser\cleanSig(), Action\convertPageToArticle(), Language\dateFormat(), TextSlotDiffRenderer\diff(), DeferredUpdates\doUpdates(), LoginSignupSpecialPage\execute(), RebuildFileCache\execute(), Undelete\execute(), UpdateMediaWiki\execute(), Parser\extractSections(), FileRepo\findFiles(), LocalRepo\findFiles(), ChangesList\flag(), FeedUtils\formatDiffRow(), ChangeTags\formatSummaryRow(), Linker\generateRollback(), MediaWiki\Rest\Handler\ActionModuleBasedHandler\getApiMain(), MediaWiki\Auth\AuthManager\getAuthenticationRequestsInternal(), ContextSource\getContext(), Article\getContext(), Profiler\getContext(), SpecialPage\getContext(), Revision\ContributionsLookup\getContributionTags(), LocalFile\getDescriptionText(), Parser\getFlatSectionInfo(), GenderCache\getGenderOf(), MediaWiki\Session\SessionManager\getGlobalSession(), MWTimestamp\getHumanTimestamp(), Language\getHumanTimestamp(), Message\getLanguage(), getMainAndWarn(), MediaWiki\Block\AbstractBlock\getReason(), MWTimestamp\getRelativeTimestamp(), User\getRequest(), WebRequest\getRequestId(), ParserOutput\getText(), MediaWiki\SpecialPage\SpecialPageFactory\getUsablePages(), ApiMain\handleApiBeforeMainException(), ImportableOldRevisionImporter\import(), importScopedSession(), Html\inlineScript(), HTMLButtonField\isBadIE(), WikitextContent\isCountable(), User\isGlobalSessionUser(), Html\linkedScript(), MediaWiki\Rest\EntryPoint\main(), User\newFatalPermissionDeniedStatus(), EmailNotification\notifyOnPageChange(), CategoryMembershipChangeJob\notifyUpdatesForRevision(), SpecialUserLogout\onSubmit(), WikiImporter\processTitle(), UserNotLoggedIn\report(), Installer\resetMediaWikiServices(), User\resetOptions(), ResourceLoader\respond(), ChangeTags\restrictedTagError(), Linker\revComment(), Linker\revUserLink(), Linker\revUserTools(), AssembleUploadChunksJob\run(), PublishStashedFileJob\run(), MediaWiki\Auth\AuthManager\setDefaultUserOptions(), LoginSignupSpecialPage\setSessionUserForCurrentRequest(), WebInstaller\setupLanguage(), ChangesList\showCharacterDifference(), LogEventsList\showLogExtract(), MediaWiki\Auth\CheckBlocksSecondaryAuthenticationProvider\testUserForCreation(), Linker\tocList(), Linker\tooltipAndAccesskeyAttribs(), WikiPage\triggerOpportunisticLinksUpdate(), LocalFile\upload(), MWExceptionRenderer\useOutputPage(), Language\userAdjust(), ChangesList\userCan(), Linker\userToolLinks(), wfApiMain(), wfImageAuthMain(), wfInstallerMain(), wfLogProfilingData(), and wfStreamThumb().
|
static |
Get the RequestContext object associated with the main request and gives a warning to the log, to find places, where a context maybe is missing.
string | $func |
Definition at line 492 of file RequestContext.php.
References getMain(), and wfDebug().
Referenced by ImageGalleryBase\factory().
RequestContext::getOutput | ( | ) |
Implements IContextSource.
Definition at line 269 of file RequestContext.php.
References $output.
RequestContext::getRequest | ( | ) |
Implements IContextSource.
Definition at line 134 of file RequestContext.php.
References $request, and $wgCommandLineMode.
Referenced by exportSession(), getLanguage(), getSkin(), and getUser().
RequestContext::getSkin | ( | ) |
Implements IContextSource.
Definition at line 420 of file RequestContext.php.
References $skin, getConfig(), getRequest(), getUser(), Skin\normalizeKey(), and Hooks\runner().
RequestContext::getStats | ( | ) |
Implements IContextSource.
Definition at line 153 of file RequestContext.php.
RequestContext::getTiming | ( | ) |
Implements IContextSource.
Definition at line 160 of file RequestContext.php.
References $timing.
RequestContext::getTitle | ( | ) |
Implements IContextSource.
Definition at line 181 of file RequestContext.php.
References $title, and $wgTitle.
Referenced by canUseWikiPage(), and getWikiPage().
RequestContext::getUser | ( | ) |
Implements IContextSource.
Definition at line 291 of file RequestContext.php.
References $user, getRequest(), and User\newFromSession().
Referenced by exportSession(), getAuthority(), getLanguage(), getSkin(), and MediaWiki\Rest\EntryPoint\main().
RequestContext::getWikiPage | ( | ) |
Get the WikiPage object.
May throw an exception if there's no Title object set or the Title object belongs to a special namespace that doesn't have WikiPage, so use first canUseWikiPage() to check whether this method can be called safely.
MWException |
Implements IContextSource.
Definition at line 247 of file RequestContext.php.
References $title, $wikipage, and getTitle().
RequestContext::hasTitle | ( | ) |
Check, if a Title object is set.
Definition at line 201 of file RequestContext.php.
Referenced by setWikiPage().
|
static |
Import an client IP address, HTTP headers, user ID, and session ID.
This sets the current session, $wgUser, and $wgRequest from $params. Once the return value falls out of scope, the old context is restored. This method should only be called in contexts where there is no session ID or end user receiving the response (CLI or HTTP job runners). This is partly enforced, and is done so to avoid leaking cookies if certain error conditions arise.
This is useful when background scripts inherit context when acting on behalf of a user. In general the 'sessionId' parameter should be set to an empty string unless session importing is truly needed. This feature is somewhat deprecated.
array | $params | Result of RequestContext::exportSession() |
MWException |
Definition at line 548 of file RequestContext.php.
References $request, $user, $wgRequest, User\getId(), getMain(), User\load(), User\newFromId(), User\newFromName(), WebRequest\setIP(), and MediaWiki\Session\SessionManager\singleton().
Referenced by AssembleUploadChunksJob\run(), and PublishStashedFileJob\run().
RequestContext::msg | ( | $key, | |
$params | |||
) |
Get a Message object with context set Parameters are the same as wfMessage()
string | string[] | MessageSpecifier | $key | Message key, or array of keys, or a MessageSpecifier. |
mixed | ...$params |
Implements MessageLocalizer.
Definition at line 467 of file RequestContext.php.
References wfMessage().
|
static |
Create a new extraneous context.
The context is filled with information external to the current session.
Title | $title | Title to use for the extraneous request |
WebRequest | array | $request | A WebRequest or data to use for a FauxRequest |
Definition at line 646 of file RequestContext.php.
References $request, $title, and User\newFromName().
Referenced by LogPage\addEntry(), ContentModelChange\doContentModelChange(), ManualLogEntry\getRecentChange(), MovePage\moveToInternal(), and LocalFile\recordUpload3().
|
static |
Resets singleton returned by getMain().
Should be called only from unit tests.
Definition at line 502 of file RequestContext.php.
|
static |
Accepts a language code and ensures it's sane.
Outputs a cleaned up language code and replaces with $wgLanguageCode if not sane.
string | $code | Language code |
Definition at line 319 of file RequestContext.php.
References $wgLanguageCode.
Referenced by ApiMain\__construct(), getLanguage(), DerivativeContext\setLanguage(), and setLanguage().
RequestContext::setAuthority | ( | Authority | $authority | ) |
@unstable
Authority | $authority |
Implements MutableContext.
Definition at line 299 of file RequestContext.php.
References $authority.
RequestContext::setConfig | ( | Config | $config | ) |
Config | $config |
Implements MutableContext.
Definition at line 107 of file RequestContext.php.
References $config.
RequestContext::setLanguage | ( | $language | ) |
MWException |
Implements MutableContext.
Definition at line 342 of file RequestContext.php.
References sanitizeLangCode().
RequestContext::setOutput | ( | OutputPage | $output | ) |
OutputPage | $output |
Implements MutableContext.
Definition at line 262 of file RequestContext.php.
References $output.
RequestContext::setRequest | ( | WebRequest | $request | ) |
WebRequest | $request |
Implements MutableContext.
Definition at line 127 of file RequestContext.php.
References $request.
Referenced by ApiEditPage\execute().
RequestContext::setSkin | ( | Skin | $skin | ) |
Skin | $skin |
Implements MutableContext.
Definition at line 412 of file RequestContext.php.
References $skin, and ContextSource\setContext().
RequestContext::setTitle | ( | Title | $title = null | ) |
Title | null | $title |
Implements MutableContext.
Definition at line 172 of file RequestContext.php.
References $title.
Referenced by Parser\braceSubstitution(), MediaWiki\Rest\EntryPoint\main(), and setWikiPage().
RequestContext::setUser | ( | User | $user | ) |
User | $user |
Implements MutableContext.
Definition at line 280 of file RequestContext.php.
References $user.
Referenced by ApiParamInfo\execute().
RequestContext::setWikiPage | ( | WikiPage | $wikiPage | ) |
WikiPage | $wikiPage |
Implements MutableContext.
Definition at line 228 of file RequestContext.php.
References WikiPage\getTitle(), hasTitle(), and setTitle().
|
private |
Definition at line 71 of file RequestContext.php.
Referenced by setAuthority().
|
private |
Definition at line 91 of file RequestContext.php.
Referenced by getConfig(), and setConfig().
|
staticprivate |
Definition at line 96 of file RequestContext.php.
Referenced by getMain().
|
private |
Definition at line 76 of file RequestContext.php.
Referenced by getLanguage().
|
private |
Boolean flag to guard against recursion in getLanguage.
Definition at line 102 of file RequestContext.php.
|
private |
Definition at line 61 of file RequestContext.php.
Referenced by getOutput(), and setOutput().
|
private |
Definition at line 46 of file RequestContext.php.
Referenced by getLanguage(), getRequest(), importScopedSession(), newExtraneousContext(), and setRequest().
|
private |
Definition at line 81 of file RequestContext.php.
|
private |
Definition at line 86 of file RequestContext.php.
Referenced by getTiming().
|
private |
Definition at line 51 of file RequestContext.php.
Referenced by canUseWikiPage(), getTitle(), getWikiPage(), newExtraneousContext(), and setTitle().
|
private |
Definition at line 66 of file RequestContext.php.
Referenced by getLanguage(), getUser(), importScopedSession(), and setUser().
|
private |
Definition at line 56 of file RequestContext.php.
Referenced by getWikiPage().