/** * Build a web request for dispatching this Ext Direct transaction * * @param \TYPO3\ExtJS\ExtDirect\Request $extDirectRequest * @return \TYPO3\Flow\Mvc\ActionRequest A web request for this transaction */ public function buildRequest(\TYPO3\ExtJS\ExtDirect\Request $extDirectRequest) { $request = new \TYPO3\Flow\Mvc\ActionRequest($extDirectRequest); $request->setControllerObjectName($this->getControllerObjectName()); $request->setControllerActionName($this->getMethod()); $request->setFormat('extdirect'); $request->setArguments($this->getArguments()); return $request; }
/** * @test */ public function actionRequestStripsParentHttpRequest() { $httpRequest = Request::create(new Uri('http://typo3.org')); $actionRequest = new \TYPO3\Flow\Mvc\ActionRequest($httpRequest); $actionRequest->setControllerActionName('foo'); $serializedActionRequest = serialize($actionRequest); /* @var $unserializedActionRequest \TYPO3\Flow\Mvc\ActionRequest */ $unserializedActionRequest = unserialize($serializedActionRequest); $this->assertNull($unserializedActionRequest->getParentRequest(), 'Parent HTTP request should be NULL after deserialization'); $this->assertSame('foo', $unserializedActionRequest->getControllerActionName()); }