[FEATURE] Add normalized server parameters to PSR-7 requests 06/55506/22
authorChristian Kuhn <lolli@schwarzbu.ch>
Sun, 11 Feb 2018 09:41:20 +0000 (10:41 +0100)
committerBenni Mack <benni@typo3.org>
Wed, 14 Feb 2018 12:58:02 +0000 (13:58 +0100)
commit340f4eae9672e123cd920494cc8374c9b3bfa082
tree7700d1085165af0c04e3210acef1dc404fd28477
parent3ca46352fe05e1c1ecae0303ad6c28f2d99412b1
[FEATURE] Add normalized server parameters to PSR-7 requests

To slowly substitute GeneralUtility::getIndpEnv() with a
better API, a new class is introduced that calculates all
normalized server parameters.
The object is added as PSR-7 request attribute in a frontend
and backend middleware.
For a transition phase, the request is made available
as $GLOBALS['TYPO3_REQUEST'] until enough core code has
been refactored to get rid of this again.

Resolves: #83736
Releases: master
Change-Id: I96c8cb6dda4cc38bbb51b64439b8e81f2c00d7ac
Reviewed-on: https://review.typo3.org/55506
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Stefan Neufeind <typo3.neufeind@speedpartner.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
typo3/sysext/backend/Configuration/RequestMiddlewares.php
typo3/sysext/core/Classes/Http/NormalizedParams.php [new file with mode: 0644]
typo3/sysext/core/Classes/Middleware/NormalizedParamsAttribute.php [new file with mode: 0644]
typo3/sysext/core/Documentation/Changelog/master/Deprecation-83736-DeprecatedGlobalsTYPO3_REQUEST.rst [new file with mode: 0644]
typo3/sysext/core/Documentation/Changelog/master/Feature-83736-ExtendedPSR-7RequestsWithTYPO3ServerParameters.rst [new file with mode: 0644]
typo3/sysext/core/Tests/Unit/Http/NormalizedParamsTest.php [new file with mode: 0644]
typo3/sysext/core/Tests/Unit/Utility/GeneralUtilityTest.php
typo3/sysext/frontend/Configuration/RequestMiddlewares.php
typo3/sysext/install/Configuration/ExtensionScanner/Php/ArrayGlobalMatcher.php