TYPO3 CMS  TYPO3_6-2
TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester Class Reference
Inheritance diagram for TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester:
TYPO3\CMS\Install\Controller\Action\Ajax\AbstractAjaxAction TYPO3\CMS\Install\Controller\Action\AbstractAction TYPO3\CMS\Install\Controller\Action\ActionInterface

Public Member Functions

 __construct ()
 
 logError ()
 
- Public Member Functions inherited from TYPO3\CMS\Install\Controller\Action\Ajax\AbstractAjaxAction
 handle ()
 
- Public Member Functions inherited from TYPO3\CMS\Install\Controller\Action\AbstractAction
 injectObjectManager (\TYPO3\CMS\Extbase\Object\ObjectManager $objectManager)
 
 injectView (\TYPO3\CMS\Install\View\FailsafeView $view)
 
 handle ()
 
 setToken ($token)
 
 setController ($controller)
 
 setAction ($action)
 
 setPostValues (array $postValues)
 
 setLastError (array $lastError)
 
 setMessages (array $messages=array())
 

Protected Member Functions

 executeAction ()
 
 deleteProtocolFile ()
 
 getExtensionsToLoad ()
 
 getExtensionsToExclude ()
 
 tryToLoadExtLocalconfAndExtTablesOfExtensions (array $extensions)
 
 loadExtTablesForExtension ($extensionKey, array $extension)
 
 loadExtLocalconfForExtension ($extensionKey, array $extension)
 
 writeCurrentExtensionToFile ($extensionKey)
 
 removeCurrentExtensionFromFile ($extensionKey)
 
- Protected Member Functions inherited from TYPO3\CMS\Install\Controller\Action\AbstractAction
 initializeHandle ()
 
 executeAction ()
 
 isDbalEnabled ()
 
 getContext ()
 
 loadExtLocalconfDatabaseAndExtTables ()
 
 getHashedPassword ($password)
 

Protected Attributes

 $protocolFile = ''
 
 $errorProtocolFile = ''
 
 $logError = FALSE
 
- Protected Attributes inherited from TYPO3\CMS\Install\Controller\Action\AbstractAction
 $objectManager = NULL
 
 $view = NULL
 
 $controller = ''
 
 $action = ''
 
 $token = ''
 
 $postValues = array()
 
 $lastError = array()
 
 $messages = array()
 

Detailed Description

Load Extensions

The idea is to load ext_localconf and ext_tables of extensions one-by-one until one of those files throws a fatal. The javascript will then recognise the fatal and initiates another run that will leave out the fataling extension to check the rest.

Definition at line 27 of file ExtensionCompatibilityTester.php.

Constructor & Destructor Documentation

◆ __construct()

TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester::__construct ( )

Construct this class set default protocol file location

Definition at line 54 of file ExtensionCompatibilityTester.php.

Member Function Documentation

◆ deleteProtocolFile()

TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester::deleteProtocolFile ( )
protected

Delete the protocol files if they exist

Returns
void

Definition at line 81 of file ExtensionCompatibilityTester.php.

Referenced by TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester\executeAction().

◆ executeAction()

TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester::executeAction ( )
protected

Main entry point for checking extensions to load, setting up the checks (deleting protocol), and returning OK if process run through without errors

Returns
string "OK" if process ran through without errors

Definition at line 66 of file ExtensionCompatibilityTester.php.

References TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester\deleteProtocolFile(), TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester\getExtensionsToLoad(), and TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester\tryToLoadExtLocalconfAndExtTablesOfExtensions().

◆ getExtensionsToExclude()

TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester::getExtensionsToExclude ( )
protected

Gets extensions already known to be incompatible This class is recursively called, and this method is needed to not run into the same errors twice.

Returns
array

Definition at line 115 of file ExtensionCompatibilityTester.php.

Referenced by TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester\getExtensionsToLoad().

◆ getExtensionsToLoad()

TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester::getExtensionsToLoad ( )
protected

Get extensions that should be loaded. Fills the TYPO3_LOADED_EXT array. Only considers local extensions

Returns
array

Definition at line 97 of file ExtensionCompatibilityTester.php.

References $GLOBALS, and TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester\getExtensionsToExclude().

Referenced by TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester\executeAction().

◆ loadExtLocalconfForExtension()

TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester::loadExtLocalconfForExtension (   $extensionKey,
array  $extension 
)
protected

Loads ext_localconf.php for a single extension. Method is a modified copy of the original bootstrap method.

Parameters
string$extensionKey
\ArrayAccess$extension
Returns
void

Definition at line 176 of file ExtensionCompatibilityTester.php.

References $_EXTCONF, $GLOBALS, and $TYPO3_CONF_VARS.

Referenced by TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester\tryToLoadExtLocalconfAndExtTablesOfExtensions().

◆ loadExtTablesForExtension()

TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester::loadExtTablesForExtension (   $extensionKey,
array  $extension 
)
protected

Loads ext_tables.php for a single extension. Method is a modified copy of the original bootstrap method.

Parameters
string$extensionKey
\ArrayAccess$extension
Returns
void

Definition at line 150 of file ExtensionCompatibilityTester.php.

References $_EXTCONF, $GLOBALS, $TCA, and $TYPO3_CONF_VARS.

Referenced by TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester\tryToLoadExtLocalconfAndExtTablesOfExtensions().

◆ logError()

◆ removeCurrentExtensionFromFile()

TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester::removeCurrentExtensionFromFile (   $extensionKey)
protected

◆ tryToLoadExtLocalconfAndExtTablesOfExtensions()

TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester::tryToLoadExtLocalconfAndExtTablesOfExtensions ( array  $extensions)
protected

◆ writeCurrentExtensionToFile()

TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester::writeCurrentExtensionToFile (   $extensionKey)
protected

Member Data Documentation

◆ $errorProtocolFile

TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester::$errorProtocolFile = ''
protected

Definition at line 41 of file ExtensionCompatibilityTester.php.

◆ $logError

TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester::$logError = FALSE
protected

Definition at line 48 of file ExtensionCompatibilityTester.php.

◆ $protocolFile

TYPO3\CMS\Install\Controller\Action\Ajax\ExtensionCompatibilityTester::$protocolFile = ''
protected

Definition at line 34 of file ExtensionCompatibilityTester.php.