2 declare(strict_types = 1);
60 public function getConfiguration($configurationType, $extensionName =
null, $pluginName =
null)
62 switch ($configurationType) {
66 return parent::getConfiguration($configurationType, $extensionName, $pluginName);
90 if (empty($extensionName)) {
92 'Please specify an extension key to load a YAML configuration',
96 $ucFirstExtensioName = ucfirst($extensionName);
100 $yamlSettingsFilePaths = isset($typoscriptSettings[
'yamlConfigurations'])
104 $cacheKeySuffix = $extensionName . md5(json_encode($yamlSettingsFilePaths));
107 if (!empty($yamlSettings)) {
115 $yamlSettings = is_array($yamlSettings[
'TYPO3'][
'CMS'][$ucFirstExtensioName])
116 ? $yamlSettings[
'TYPO3'][
'CMS'][$ucFirstExtensioName]
131 $typoScript = parent::getConfiguration(self::CONFIGURATION_TYPE_SETTINGS, $extensionName);
132 if (is_array($typoScript[
'yamlSettingsOverrides']) && !empty($typoScript[
'yamlSettingsOverrides'])) {
135 $typoScript[
'yamlSettingsOverrides']
138 if ($this->environmentService->isEnvironmentInFrontendMode()) {
139 $yamlSettings = $this->objectManager->get(TypoScriptService::class)
140 ->resolvePossibleTypoScriptConfiguration($yamlSettings);
143 return $yamlSettings;
151 if ($this->cache ===
null) {
152 $this->cache = GeneralUtility::makeInstance(CacheManager::class)->getCache(
'assets');
163 return strtolower(self::CONFIGURATION_TYPE_YAML_SETTINGS .
'_' . $cacheKeySuffix);
182 string $cacheKeySuffix,
197 return parent::getConfiguration(