From d25257a115e296db61b11430d276e82e39fd680f Mon Sep 17 00:00:00 2001 From: Helmut Hummel <info@helhum.io> Date: Mon, 9 May 2016 19:54:04 +0200 Subject: [PATCH] [TASK] Make driver registry TCA change cacheable Instead of calling the driver registry on every request, we can cache the TCA addition, by putting the call into overrides. Resolves: #76102 Releases: 7.6, master Change-Id: I8cfc72f0e7dbb133eecc754fd3cb774637a0d4bf Reviewed-on: https://review.typo3.org/48047 Reviewed-by: Nicole Cordes <typo3@cordes.co> Tested-by: Nicole Cordes <typo3@cordes.co> Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl> Reviewed-by: Markus Klein <markus.klein@typo3.org> Tested-by: Markus Klein <markus.klein@typo3.org> --- typo3/sysext/core/Classes/Resource/Driver/DriverRegistry.php | 4 ---- .../core/Configuration/TCA/Overrides/sys_file_storage.php | 4 ++++ typo3/sysext/core/ext_tables.php | 4 ---- 3 files changed, 4 insertions(+), 8 deletions(-) create mode 100644 typo3/sysext/core/Configuration/TCA/Overrides/sys_file_storage.php diff --git a/typo3/sysext/core/Classes/Resource/Driver/DriverRegistry.php b/typo3/sysext/core/Classes/Resource/Driver/DriverRegistry.php index 4ef5661fb6d1..2b5cb4581195 100644 --- a/typo3/sysext/core/Classes/Resource/Driver/DriverRegistry.php +++ b/typo3/sysext/core/Classes/Resource/Driver/DriverRegistry.php @@ -87,10 +87,6 @@ class DriverRegistry implements \TYPO3\CMS\Core\SingletonInterface */ public function addDriversToTCA() { - // Add driver to TCA of sys_file_storage - if (TYPO3_MODE !== 'BE') { - return; - } $driverFieldConfig = &$GLOBALS['TCA']['sys_file_storage']['columns']['driver']['config']; $configurationFieldConfig = &$GLOBALS['TCA']['sys_file_storage']['columns']['configuration']['config']; foreach ($this->driverConfigurations as $driver) { diff --git a/typo3/sysext/core/Configuration/TCA/Overrides/sys_file_storage.php b/typo3/sysext/core/Configuration/TCA/Overrides/sys_file_storage.php new file mode 100644 index 000000000000..4404f3533fcf --- /dev/null +++ b/typo3/sysext/core/Configuration/TCA/Overrides/sys_file_storage.php @@ -0,0 +1,4 @@ +<?php +defined('TYPO3_MODE') || die(); + +\TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\Resource\Driver\DriverRegistry::class)->addDriversToTCA(); diff --git a/typo3/sysext/core/ext_tables.php b/typo3/sysext/core/ext_tables.php index 1a5fced4019b..f1a9dc0d4e4b 100644 --- a/typo3/sysext/core/ext_tables.php +++ b/typo3/sysext/core/ext_tables.php @@ -40,10 +40,6 @@ $GLOBALS['PAGES_TYPES'] = array( \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('sys_category,sys_file_reference,sys_file_collection'); -/** @var \TYPO3\CMS\Core\Resource\Driver\DriverRegistry $registry */ -$registry = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\Resource\Driver\DriverRegistry::class); -$registry->addDriversToTCA(); - /** * $TBE_MODULES contains the structure of the backend modules as they are * arranged in main- and sub-modules. Every entry in this array represents a -- GitLab