TYPO3 API  SVNRelease
BackendRequestHandler.php
Go to the documentation of this file.
00001 <?php
00002 /***************************************************************
00003  *  Copyright notice
00004  *
00005  *  (c) 2010 Jochen Rau <jochen.rau@typoplanet.de>
00006  *  All rights reserved
00007  *
00008  *  This class is a backport of the corresponding class of FLOW3.
00009  *  All credits go to the v5 team.
00010  *
00011  *  This script is part of the TYPO3 project. The TYPO3 project is
00012  *  free software; you can redistribute it and/or modify
00013  *  it under the terms of the GNU General Public License as published by
00014  *  the Free Software Foundation; either version 2 of the License, or
00015  *  (at your option) any later version.
00016  *
00017  *  The GNU General Public License can be found at
00018  *  http://www.gnu.org/copyleft/gpl.html.
00019  *
00020  *  This script is distributed in the hope that it will be useful,
00021  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00022  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00023  *  GNU General Public License for more details.
00024  *
00025  *  This copyright notice MUST APPEAR in all copies of the script!
00026  ***************************************************************/
00027 
00028 /**
00029  * A request handler which can handle web requests invoked by the backend.
00030  *
00031  */
00032 class Tx_Extbase_MVC_Web_BackendRequestHandler extends Tx_Extbase_MVC_Web_AbstractRequestHandler {
00033 
00034     /**
00035      * Handles the web request. The response will automatically be sent to the client.
00036      *
00037      * @return void
00038      */
00039     public function handleRequest() {
00040         $request = $this->requestBuilder->build();
00041 
00042             // Request hash service
00043         $requestHashService = $this->objectManager->get('Tx_Extbase_Security_Channel_RequestHashService'); // singleton
00044         $requestHashService->verifyRequest($request);
00045 
00046         $response = $this->objectManager->create('Tx_Extbase_MVC_Web_Response');
00047 
00048         $this->dispatcher->dispatch($request, $response);
00049 
00050         return $response;
00051     }
00052 
00053     /**
00054      * This request handler can handle a web request invoked by the backend.
00055      *
00056      * @return boolean If we are in backend mode TRUE otherwise FALSE
00057      */
00058     public function canHandleRequest() {
00059         return TYPO3_MODE === 'BE';
00060     }
00061 
00062 }
00063 ?>