[!!!][TASK] Request processing chain must return a response object
This patch introduces a proper request/response handling chain. That means, that Extbase no longer creates a response object early, passes it through the request handler and dispatcher into the controller and expects it to be altered there. Instead, request handlers, the dispatcher and controllers only get passed a request object and controllers are then responsible for creating and returning a response. This change is preparatory work for the introduction of PSR-7 responses in Extbase. Those responses are immutable and can no longer passed by reference through the stack. Instead, the controller must return the desired response along with its state down the stack while remaining unaltered. This patch is considered breaking because it changes several method signatures of public classes and interfaces. Still, it is quite unlikely to be struck by this change when using the public api of Extbase and not overriding classes such as the ActionController. Releases: master Resolves: #92513 Change-Id: I3ab7846268ea68727a2f57eea69328b85be4f5e6 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66079 Tested-by: TYPO3com <noreply@typo3.com> Tested-by: Oliver Bartsch <bo@cedev.de> Tested-by: Benni Mack <benni@typo3.org> Reviewed-by: Oliver Bartsch <bo@cedev.de> Reviewed-by: Benni Mack <benni@typo3.org>
Showing
- typo3/sysext/beuser/Classes/Controller/BackendUserController.php 4 additions, 3 deletions...ysext/beuser/Classes/Controller/BackendUserController.php
- typo3/sysext/core/Documentation/Changelog/master/Breaking-92513-MethodSignatureChangeOfTYPO3CMSExtbaseMvcControllerControllerInterfaceprocessRequest.rst 37 additions, 0 deletions...ExtbaseMvcControllerControllerInterfaceprocessRequest.rst
- typo3/sysext/core/Tests/Functional/Fixtures/Extensions/irre_tutorial/Classes/Controller/AbstractController.php 3 additions, 3 deletions...s/irre_tutorial/Classes/Controller/AbstractController.php
- typo3/sysext/extbase/Classes/Mvc/Controller/ActionController.php 12 additions, 8 deletions...ysext/extbase/Classes/Mvc/Controller/ActionController.php
- typo3/sysext/extbase/Classes/Mvc/Controller/ControllerInterface.php 2 additions, 2 deletions...xt/extbase/Classes/Mvc/Controller/ControllerInterface.php
- typo3/sysext/extbase/Classes/Mvc/Dispatcher.php 12 additions, 3 deletionstypo3/sysext/extbase/Classes/Mvc/Dispatcher.php
- typo3/sysext/extbase/Classes/Mvc/Exception/StopActionException.php 17 additions, 0 deletions...ext/extbase/Classes/Mvc/Exception/StopActionException.php
- typo3/sysext/extbase/Classes/Mvc/Web/BackendRequestHandler.php 1 addition, 3 deletions.../sysext/extbase/Classes/Mvc/Web/BackendRequestHandler.php
- typo3/sysext/extbase/Classes/Mvc/Web/FrontendRequestHandler.php 2 additions, 6 deletions...sysext/extbase/Classes/Mvc/Web/FrontendRequestHandler.php
- typo3/sysext/extbase/Tests/Functional/Fixtures/Extensions/blog_example/Classes/Controller/BlogController.php 3 additions, 3 deletions...nsions/blog_example/Classes/Controller/BlogController.php
- typo3/sysext/extbase/Tests/Functional/Fixtures/Extensions/blog_example/Classes/Controller/ContentController.php 3 additions, 3 deletions...ons/blog_example/Classes/Controller/ContentController.php
- typo3/sysext/extbase/Tests/Functional/Mvc/Controller/ActionControllerArgumentTest.php 4 additions, 12 deletions...unctional/Mvc/Controller/ActionControllerArgumentTest.php
- typo3/sysext/extbase/Tests/Functional/Mvc/Controller/ActionControllerTest.php 3 additions, 11 deletions.../Tests/Functional/Mvc/Controller/ActionControllerTest.php
- typo3/sysext/extbase/Tests/Functional/Mvc/Controller/ControllerArgumentsMappingTest.php 2 additions, 10 deletions...ctional/Mvc/Controller/ControllerArgumentsMappingTest.php
- typo3/sysext/extbase/Tests/Functional/Mvc/Validation/ActionControllerValidationTest.php 2 additions, 3 deletions...ctional/Mvc/Validation/ActionControllerValidationTest.php
- typo3/sysext/form/Classes/Domain/Finishers/RedirectFinisher.php 1 addition, 1 deletion...sysext/form/Classes/Domain/Finishers/RedirectFinisher.php
- typo3/sysext/indexed_search/Classes/Controller/AdministrationController.php 3 additions, 3 deletions...ed_search/Classes/Controller/AdministrationController.php
Loading
Please register or sign in to comment