14use MediaWiki\Rest\Handler\Helper\RestStatusTrait;
31 private $apiMain =
null;
41 $this->apiMain = $apiMain;
48 if ( $this->apiMain ) {
49 return $this->apiMain;
52 $context = RequestContext::getMain();
53 $session = $context->getRequest()->getSession();
58 $fauxRequest =
new FauxRequest( [],
true, $session );
59 $fauxRequest->setSessionId( $session->getSessionId() );
62 $fauxContext->setRequest( $fauxRequest );
63 $fauxContext->setUser( $context->getUser() );
64 $fauxContext->setLanguage( $context->getLanguage() );
66 $this->apiMain =
new ApiMain( $fauxContext,
true );
67 return $this->apiMain;
78 $this->
getApiMain()->getModuleManager()->addModule(
82 'class' => get_class( $module ),
83 'factory' =>
static function () use ( $module ) {
105 foreach (
$params as $key => $value ) {
106 $request->setVal( $key, $value );
115 foreach ( $ex->
getStatusValue()->getMessages(
'error' ) as $msg ) {
116 $msg = ApiMessage::create( $msg );
127 $actionModuleResult = $apiMain->
getResult()->getResultData(
null, [
'Strip' =>
'all' ] );
182 array $actionModuleResult,
210 MessageValue::newFromSpecifier( $msg ),
217 [
'actionModuleErrorCode' => $msg->
getApiCode() ]
array $params
The job parameters.
This is the main API class, used for both external and internal processing.
getResult()
Get the ApiResult object associated with current request.
execute()
Execute api request.
Group all the pieces relevant to the context of a request into one instance.