/** * @test */ public function theRepresentationFormatCanBeSetAndRetrieved() { $this->actionRequest->setFormat('html'); $this->assertEquals('html', $this->actionRequest->getFormat()); $this->actionRequest->setFormat('doc'); $this->assertEquals('doc', $this->actionRequest->getFormat()); $this->actionRequest->setFormat('hTmL'); $this->assertEquals('html', $this->actionRequest->getFormat()); }
/** * Redirects the web request to another uri. * * NOTE: This method only supports web requests and will throw an exception * if used with other request types. * * @param mixed $uri Either a string representation of a URI or a \TYPO3\Flow\Http\Uri object * @param integer $delay (optional) The delay in seconds. Default is no delay. * @param integer $statusCode (optional) The HTTP status code for the redirect. Default is "303 See Other" * @return void * @throws \TYPO3\Flow\Mvc\Exception\StopActionException * @api */ protected function redirectToUri($uri, $delay = 0, $statusCode = 303) { // the parent method throws the exception, but we need to act afterwards // thus the code in catch - it's the expected state try { parent::redirectToUri($uri, $delay, $statusCode); } catch (\TYPO3\Flow\Mvc\Exception\StopActionException $exception) { if ($this->request->getFormat() === 'json') { $this->response->setContent(''); } throw $exception; } }
/** * Redirects the request to another action and / or controller. * * Redirect will be sent to the client which then performs another request to the new URI. * * NOTE: This method only supports web requests and will throw an exception * if used with other request types. * * @param ActionRequest $request The request to redirect to * @param integer $delay (optional) The delay in seconds. Default is no delay. * @param integer $statusCode (optional) The HTTP status code for the redirect. Default is "303 See Other" * @return void * @throws \TYPO3\Flow\Mvc\Exception\StopActionException * @see forwardToRequest() * @api */ protected function redirectToRequest(ActionRequest $request, $delay = 0, $statusCode = 303) { $packageKey = $request->getControllerPackageKey(); $subpackageKey = $request->getControllerSubpackageKey(); if ($subpackageKey !== null) { $packageKey .= '\\' . $subpackageKey; } $this->redirect($request->getControllerActionName(), $request->getControllerName(), $packageKey, $request->getArguments(), $delay, $statusCode, $request->getFormat()); }
/** * @test */ public function theRepresentationFormatCanBeSetAndRetrieved() { $httpRequest = HttpRequest::create(new Uri('http://foo.com')); $actionRequest = new ActionRequest($httpRequest); $actionRequest->setFormat('html'); $this->assertEquals('html', $actionRequest->getFormat()); $actionRequest->setFormat('doc'); $this->assertEquals('doc', $actionRequest->getFormat()); $actionRequest->setFormat('hTmL'); $this->assertEquals('html', $actionRequest->getFormat()); }