TYPO3 CMS  TYPO3_7-6
TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager Class Reference
Inheritance diagram for TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager:
TYPO3\CMS\Core\SingletonInterface TYPO3\CMS\Extbase\Configuration\BackendConfigurationManager TYPO3\CMS\Extbase\Configuration\FrontendConfigurationManager

Public Member Functions

 injectObjectManager (\TYPO3\CMS\Extbase\Object\ObjectManagerInterface $objectManager)
 
 injectTypoScriptService (\TYPO3\CMS\Extbase\Service\TypoScriptService $typoScriptService)
 
 injectEnvironmentService (\TYPO3\CMS\Extbase\Service\EnvironmentService $environmentService)
 
 setContentObject (\TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer $contentObject=null)
 
 getContentObject ()
 
 setConfiguration (array $configuration=[])
 
 getConfiguration ($extensionName=null, $pluginName=null)
 
 getDefaultBackendStoragePid ()
 
 getTypoScriptSetup ()
 

Public Attributes

const DEFAULT_BACKEND_STORAGE_PID = 0
 

Protected Member Functions

 getExtbaseConfiguration ()
 
 overrideSwitchableControllerActions (array &$frameworkConfiguration, array $switchableControllerActions)
 
 getContextSpecificFrameworkConfiguration (array $frameworkConfiguration)
 
 getPluginConfiguration ($extensionName, $pluginName=null)
 
 getSwitchableControllerActions ($extensionName, $pluginName)
 
 getRecursiveStoragePids ($storagePid, $recursionDepth=0)
 

Protected Attributes

 $configuration = []
 
 $contentObject
 
 $objectManager
 
 $typoScriptService
 
 $extensionName
 
 $pluginName
 
 $configurationCache = []
 
 $environmentService
 

Detailed Description

Abstract base class for a general purpose configuration manager

Definition at line 20 of file AbstractConfigurationManager.php.

Member Function Documentation

◆ getConfiguration()

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::getConfiguration (   $extensionName = null,
  $pluginName = null 
)

Loads the Extbase Framework configuration.

The Extbase framework configuration HAS TO be retrieved using this method, as they are come from different places than the normal settings. Framework configuration is, in contrast to normal settings, needed for the Extbase framework to operate correctly.

Parameters
string$extensionNameif specified, the configuration for the given extension will be returned (plugin.tx_extensionname)
string$pluginNameif specified, the configuration for the given plugin will be returned (plugin.tx_extensionname_pluginname)
Returns
array the Extbase framework configuration

We simulate the frontend to enable the use of cObjects in stdWrap. Than we convert the configuration to normal TypoScript and apply the stdWrap to the storagePid

Definition at line 145 of file AbstractConfigurationManager.php.

References TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\$extensionName, $GLOBALS, TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\$pluginName, TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\getContentObject(), TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\getContextSpecificFrameworkConfiguration(), TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\getDefaultBackendStoragePid(), TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\getExtbaseConfiguration(), TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\getPluginConfiguration(), TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\getRecursiveStoragePids(), TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\getSwitchableControllerActions(), TYPO3\CMS\Core\Utility\GeneralUtility\intExplode(), TYPO3\CMS\Core\Utility\ArrayUtility\mergeRecursiveWithOverrule(), TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\overrideSwitchableControllerActions(), TYPO3\CMS\Extbase\Utility\FrontendSimulatorUtility\resetFrontendEnvironment(), and TYPO3\CMS\Extbase\Utility\FrontendSimulatorUtility\simulateFrontendEnvironment().

◆ getContentObject()

◆ getContextSpecificFrameworkConfiguration()

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::getContextSpecificFrameworkConfiguration ( array  $frameworkConfiguration)
abstractprotected

The context specific configuration returned by this method will override the framework configuration which was obtained from TypoScript. This can be used f.e. to override the storagePid with the value set inside the Plugin Instance.

WARNING: Make sure this method ALWAYS returns an array!

Parameters
array$frameworkConfigurationThe framework configuration until now
Returns
array context specific configuration which will override the configuration obtained by TypoScript

Referenced by TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\getConfiguration(), and TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\overrideSwitchableControllerActions().

◆ getDefaultBackendStoragePid()

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::getDefaultBackendStoragePid ( )

Returns the default backend storage pid

Returns
string

Definition at line 231 of file AbstractConfigurationManager.php.

Referenced by TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\getConfiguration().

◆ getExtbaseConfiguration()

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::getExtbaseConfiguration ( )
protected

Returns the TypoScript configuration found in config.tx_extbase

Returns
array

Definition at line 216 of file AbstractConfigurationManager.php.

References TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\getTypoScriptSetup().

Referenced by TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\getConfiguration().

◆ getPluginConfiguration()

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::getPluginConfiguration (   $extensionName,
  $pluginName = null 
)
abstractprotected

Returns the TypoScript configuration found in plugin.tx_yourextension_yourplugin / module.tx_yourextension_yourmodule merged with the global configuration of your extension from plugin.tx_yourextension / module.tx_yourextension

Parameters
string$extensionName
string$pluginNamein FE mode this is the specified plugin name, in BE mode this is the full module signature
Returns
array

Referenced by TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\getConfiguration(), and TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\overrideSwitchableControllerActions().

◆ getRecursiveStoragePids()

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::getRecursiveStoragePids (   $storagePid,
  $recursionDepth = 0 
)
abstractprotected

The implementation of the methods to return a list of storagePid that are below a certain storage pid.

Parameters
string$storagePidStorage PID to start at; multiple PIDs possible as comma-separated list
int$recursionDepthMaximum number of levels to search, 0 to disable recursive lookup
Returns
string storage PIDs

Referenced by TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\getConfiguration(), and TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\overrideSwitchableControllerActions().

◆ getSwitchableControllerActions()

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::getSwitchableControllerActions (   $extensionName,
  $pluginName 
)
abstractprotected

Returns the configured controller/action pairs of the specified plugin/module in the format array( 'Controller1' => array('action1', 'action2'), 'Controller2' => array('action3', 'action4') )

Parameters
string$extensionName
string$pluginNamein FE mode this is the specified plugin name, in BE mode this is the full module signature
Returns
array

Referenced by TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\getConfiguration(), and TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\overrideSwitchableControllerActions().

◆ getTypoScriptSetup()

◆ injectEnvironmentService()

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::injectEnvironmentService ( \TYPO3\CMS\Extbase\Service\EnvironmentService  $environmentService)
Parameters
\TYPO3\CMS\Extbase\Service\EnvironmentService$environmentService

Definition at line 94 of file AbstractConfigurationManager.php.

References TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\$environmentService.

◆ injectObjectManager()

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::injectObjectManager ( \TYPO3\CMS\Extbase\Object\ObjectManagerInterface  $objectManager)
Parameters
\TYPO3\CMS\Extbase\Object\ObjectManagerInterface$objectManager

Definition at line 78 of file AbstractConfigurationManager.php.

References TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\$objectManager.

◆ injectTypoScriptService()

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::injectTypoScriptService ( \TYPO3\CMS\Extbase\Service\TypoScriptService  $typoScriptService)
Parameters
\TYPO3\CMS\Extbase\Service\TypoScriptService$typoScriptService

Definition at line 86 of file AbstractConfigurationManager.php.

References TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\$typoScriptService.

◆ overrideSwitchableControllerActions()

◆ setConfiguration()

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::setConfiguration ( array  $configuration = [])

Sets the specified raw configuration coming from the outside. Note that this is a low level method and only makes sense to be used by Extbase internally.

Parameters
array$configurationThe new configuration
Returns
void

Definition at line 126 of file AbstractConfigurationManager.php.

References TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\$configuration.

◆ setContentObject()

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::setContentObject ( \TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer  $contentObject = null)
Parameters
\TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer$contentObject
Returns
void

Definition at line 103 of file AbstractConfigurationManager.php.

References TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager\$contentObject.

Member Data Documentation

◆ $configuration

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::$configuration = []
protected

◆ $configurationCache

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::$configurationCache = []
protected

Definition at line 68 of file AbstractConfigurationManager.php.

◆ $contentObject

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::$contentObject
protected

◆ $environmentService

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::$environmentService
protected

◆ $extensionName

◆ $objectManager

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::$objectManager
protected

◆ $pluginName

◆ $typoScriptService

TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::$typoScriptService
protected

◆ DEFAULT_BACKEND_STORAGE_PID

const TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager::DEFAULT_BACKEND_STORAGE_PID = 0