TYPO3 CMS  TYPO3_7-6
TYPO3\CMS\Extensionmanager\Utility\InstallUtility Class Reference
Inheritance diagram for TYPO3\CMS\Extensionmanager\Utility\InstallUtility:
TYPO3\CMS\Core\SingletonInterface

Public Member Functions

 injectObjectManager (\TYPO3\CMS\Extbase\Object\ObjectManager $objectManager)
 
 injectInstallToolSqlParser (\TYPO3\CMS\Install\Service\SqlSchemaMigrationService $installToolSqlParser)
 
 injectDependencyUtility (\TYPO3\CMS\Extensionmanager\Utility\DependencyUtility $dependencyUtility)
 
 injectFileHandlingUtility (\TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility $fileHandlingUtility)
 
 injectListUtility (\TYPO3\CMS\Extensionmanager\Utility\ListUtility $listUtility)
 
 injectDatabaseUtility (\TYPO3\CMS\Extensionmanager\Utility\DatabaseUtility $databaseUtility)
 
 injectExtensionRepository (\TYPO3\CMS\Extensionmanager\Domain\Repository\ExtensionRepository $extensionRepository)
 
 injectPackageManager (\TYPO3\CMS\Core\Package\PackageManager $packageManager)
 
 injectCacheManager (\TYPO3\CMS\Core\Cache\CacheManager $cacheManager)
 
 injectSignalSlotDispatcher (\TYPO3\CMS\Extbase\SignalSlot\Dispatcher $signalSlotDispatcher)
 
 injectRegistry (\TYPO3\CMS\Core\Registry $registry)
 
 install ($extensionKey)
 
 processExtensionSetup ($extensionKey)
 
 uninstall ($extensionKey)
 
 isLoaded ($extensionKey)
 
 reloadAvailableExtensions ()
 
 isAvailable ($extensionKey)
 
 reloadPackageInformation ($extensionKey)
 
 enrichExtensionWithDetails ($extensionKey, $loadTerInformation=true)
 
 processDatabaseUpdates (array $extension)
 
 reloadCaches ()
 
 updateDbWithExtTablesSql ($rawDefinitions)
 
 importStaticSql ($rawDefinitions)
 
 removeExtension ($extension)
 
 getExtensionSqlDataDump ($extension)
 
 isUpdateAvailable (Extension $extensionData)
 

Public Attributes

 $objectManager
 
 $installToolSqlParser
 
 $extensionRepository
 

Protected Member Functions

 loadExtension ($extensionKey)
 
 unloadExtension ($extensionKey)
 
 emitAfterExtensionInstallSignal ($extensionKey)
 
 emitAfterExtensionUninstallSignal ($extensionKey)
 
 getExtensionArray ($extensionKey)
 
 ensureConfiguredDirectoriesExist (array $extension)
 
 processRuntimeDatabaseUpdates ($extensionKey)
 
 emitTablesDefinitionIsBeingBuiltSignal ($extensionKey)
 
 reloadOpcache ()
 
 getSqlDataDumpForFile ($sqlFile)
 
 emitAfterExtensionT3DImportSignal ($importFileToUse, $importResult)
 
 importStaticSqlFile ($extensionSiteRelPath)
 
 emitAfterExtensionStaticSqlImportSignal ($extTablesStaticSqlRelFile)
 
 importInitialFiles ($extensionSiteRelPath, $extensionKey)
 
 emitAfterExtensionFileImportSignal ($destinationAbsolutePath)
 
 getDatabaseConnection ()
 

Protected Attributes

 $dependencyUtility
 
 $fileHandlingUtility
 
 $listUtility
 
 $databaseUtility
 
 $packageManager
 
 $cacheManager
 
 $signalSlotDispatcher
 
 $registry
 

Detailed Description

Extension Manager Install Utility

Definition at line 27 of file InstallUtility.php.

Member Function Documentation

◆ emitAfterExtensionFileImportSignal()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::emitAfterExtensionFileImportSignal (   $destinationAbsolutePath)
protected

Emits a signal after extension files were imported

Parameters
string$destinationAbsolutePath

Definition at line 763 of file InstallUtility.php.

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\importInitialFiles().

◆ emitAfterExtensionInstallSignal()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::emitAfterExtensionInstallSignal (   $extensionKey)
protected

Emits a signal after an extension has been installed

Parameters
string$extensionKey

Definition at line 280 of file InstallUtility.php.

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\install().

◆ emitAfterExtensionStaticSqlImportSignal()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::emitAfterExtensionStaticSqlImportSignal (   $extTablesStaticSqlRelFile)
protected

Emits a signal after a static sql file was imported

Parameters
string$extTablesStaticSqlRelFile

Definition at line 726 of file InstallUtility.php.

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\importStaticSqlFile().

◆ emitAfterExtensionT3DImportSignal()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::emitAfterExtensionT3DImportSignal (   $importFileToUse,
  $importResult 
)
protected

Emits a signal after an t3d file was imported

Parameters
string$importFileToUse
int$importResult

Definition at line 693 of file InstallUtility.php.

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\isUpdateAvailable().

◆ emitAfterExtensionUninstallSignal()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::emitAfterExtensionUninstallSignal (   $extensionKey)
protected

Emits a signal after an extension has been uninstalled

Parameters
string$extensionKey

Definition at line 290 of file InstallUtility.php.

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\unloadExtension().

◆ emitTablesDefinitionIsBeingBuiltSignal()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::emitTablesDefinitionIsBeingBuiltSignal (   $extensionKey)
protected

Emits a signal to manipulate the tables definitions

Parameters
string$extensionKey
Returns
mixed
Exceptions
ExtensionManagerException

Definition at line 418 of file InstallUtility.php.

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\processRuntimeDatabaseUpdates().

◆ enrichExtensionWithDetails()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::enrichExtensionWithDetails (   $extensionKey,
  $loadTerInformation = true 
)

Fetch additional information for an extension key

Parameters
string$extensionKey
bool$loadTerInformationprivate
Returns
array
Exceptions
ExtensionManagerException

Definition at line 332 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\getExtensionArray().

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\getExtensionSqlDataDump(), TYPO3\CMS\Extensionmanager\Utility\InstallUtility\install(), and TYPO3\CMS\Extensionmanager\Utility\InstallUtility\processExtensionSetup().

◆ ensureConfiguredDirectoriesExist()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::ensureConfiguredDirectoriesExist ( array  $extension)
protected

Creates directories as requested in ext_emconf.php

Parameters
array$extension

Definition at line 371 of file InstallUtility.php.

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\processExtensionSetup().

◆ getDatabaseConnection()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::getDatabaseConnection ( )
protected

◆ getExtensionArray()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::getExtensionArray (   $extensionKey)
protected
Parameters
string$extensionKey
Returns
array
Exceptions
ExtensionManagerException

Definition at line 356 of file InstallUtility.php.

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\enrichExtensionWithDetails().

◆ getExtensionSqlDataDump()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::getExtensionSqlDataDump (   $extension)

Get the data dump for an extension

Parameters
string$extension
Returns
array

Definition at line 571 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\enrichExtensionWithDetails(), and TYPO3\CMS\Extensionmanager\Utility\InstallUtility\getSqlDataDumpForFile().

◆ getSqlDataDumpForFile()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::getSqlDataDumpForFile (   $sqlFile)
protected

Gets the sql data dump for a specific sql file (for example ext_tables.sql)

Parameters
string$sqlFile
Returns
string

Definition at line 586 of file InstallUtility.php.

References TYPO3\CMS\Core\Utility\GeneralUtility\getUrl().

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\getExtensionSqlDataDump().

◆ importInitialFiles()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::importInitialFiles (   $extensionSiteRelPath,
  $extensionKey 
)
protected

Imports files from Initialisation/Files to fileadmin via lowlevel copy directory method

Parameters
string$extensionSiteRelPathrelative path to extension dir
string$extensionKey

Definition at line 738 of file InstallUtility.php.

References $GLOBALS, TYPO3\CMS\Core\Utility\GeneralUtility\copyDirectory(), TYPO3\CMS\Extensionmanager\Utility\InstallUtility\emitAfterExtensionFileImportSignal(), TYPO3\CMS\Core\Utility\GeneralUtility\isAllowedAbsPath(), and TYPO3\CMS\Core\Utility\GeneralUtility\mkdir().

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\processExtensionSetup().

◆ importStaticSql()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::importStaticSql (   $rawDefinitions)

Import static SQL data (normally used for ext_tables_static+adt.sql)

Parameters
string$rawDefinitions
Exceptions
ExtensionManagerException
Returns
void

Definition at line 518 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\getDatabaseConnection().

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\importStaticSqlFile().

◆ importStaticSqlFile()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::importStaticSqlFile (   $extensionSiteRelPath)
protected

Imports a static tables SQL File (ext_tables_static+adt) Execution state is saved in the this->registry, so it only happens once

Parameters
string$extensionSiteRelPath
Returns
void

Definition at line 705 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\emitAfterExtensionStaticSqlImportSignal(), TYPO3\CMS\Core\Utility\GeneralUtility\getUrl(), and TYPO3\CMS\Extensionmanager\Utility\InstallUtility\importStaticSql().

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\processDatabaseUpdates().

◆ injectCacheManager()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::injectCacheManager ( \TYPO3\CMS\Core\Cache\CacheManager  $cacheManager)
Parameters
\TYPO3\CMS\Core\Cache\CacheManager$cacheManager

Definition at line 151 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\$cacheManager.

◆ injectDatabaseUtility()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::injectDatabaseUtility ( \TYPO3\CMS\Extensionmanager\Utility\DatabaseUtility  $databaseUtility)
Parameters
\TYPO3\CMS\Extensionmanager\Utility\DatabaseUtility$databaseUtility

Definition at line 127 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\$databaseUtility.

◆ injectDependencyUtility()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::injectDependencyUtility ( \TYPO3\CMS\Extensionmanager\Utility\DependencyUtility  $dependencyUtility)
Parameters
\TYPO3\CMS\Extensionmanager\Utility\DependencyUtility$dependencyUtility

Definition at line 103 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\$dependencyUtility.

◆ injectExtensionRepository()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::injectExtensionRepository ( \TYPO3\CMS\Extensionmanager\Domain\Repository\ExtensionRepository  $extensionRepository)
Parameters
\TYPO3\CMS\Extensionmanager\Domain\Repository\ExtensionRepository$extensionRepository

Definition at line 135 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\$extensionRepository.

◆ injectFileHandlingUtility()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::injectFileHandlingUtility ( \TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility  $fileHandlingUtility)
Parameters
\TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility$fileHandlingUtility

Definition at line 111 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\$fileHandlingUtility.

◆ injectInstallToolSqlParser()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::injectInstallToolSqlParser ( \TYPO3\CMS\Install\Service\SqlSchemaMigrationService  $installToolSqlParser)
Parameters
\TYPO3\CMS\Install\Service\SqlSchemaMigrationService$installToolSqlParser

Definition at line 95 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\$installToolSqlParser.

◆ injectListUtility()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::injectListUtility ( \TYPO3\CMS\Extensionmanager\Utility\ListUtility  $listUtility)
Parameters
\TYPO3\CMS\Extensionmanager\Utility\ListUtility$listUtility

Definition at line 119 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\$listUtility.

◆ injectObjectManager()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::injectObjectManager ( \TYPO3\CMS\Extbase\Object\ObjectManager  $objectManager)
Parameters
\TYPO3\CMS\Extbase\Object\ObjectManager$objectManager

Definition at line 87 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\$objectManager.

◆ injectPackageManager()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::injectPackageManager ( \TYPO3\CMS\Core\Package\PackageManager  $packageManager)
Parameters
\TYPO3\CMS\Core\Package\PackageManager$packageManager

Definition at line 143 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\$packageManager.

◆ injectRegistry()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::injectRegistry ( \TYPO3\CMS\Core\Registry  $registry)
Parameters
\TYPO3\CMS\Core\Registry$registry

Definition at line 167 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\$registry.

◆ injectSignalSlotDispatcher()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::injectSignalSlotDispatcher ( \TYPO3\CMS\Extbase\SignalSlot\Dispatcher  $signalSlotDispatcher)
Parameters
\TYPO3\CMS\Extbase\SignalSlot\Dispatcher$signalSlotDispatcher

Definition at line 159 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\$signalSlotDispatcher.

◆ install()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::install (   $extensionKey)

◆ isAvailable()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::isAvailable (   $extensionKey)

Checks if an extension is available in the system

Parameters
string$extensionKey
Returns
bool

Definition at line 301 of file InstallUtility.php.

◆ isLoaded()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::isLoaded (   $extensionKey)

Wrapper function to check for loaded extensions

Parameters
string$extensionKey
Returns
bool TRUE if extension is loaded

Definition at line 238 of file InstallUtility.php.

◆ isUpdateAvailable()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::isUpdateAvailable ( Extension  $extensionData)

◆ loadExtension()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::loadExtension (   $extensionKey)
protected

Wrapper function for loading extensions

Parameters
string$extensionKey
Returns
void

Definition at line 257 of file InstallUtility.php.

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\install().

◆ processDatabaseUpdates()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::processDatabaseUpdates ( array  $extension)

Gets the content of the ext_tables.sql and ext_tables_static+adt.sql files Additionally adds the table definitions for the cache tables

Parameters
array$extension

Definition at line 382 of file InstallUtility.php.

References TYPO3\CMS\Core\Utility\GeneralUtility\getUrl(), TYPO3\CMS\Extensionmanager\Utility\InstallUtility\importStaticSqlFile(), and TYPO3\CMS\Extensionmanager\Utility\InstallUtility\updateDbWithExtTablesSql().

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\processExtensionSetup().

◆ processExtensionSetup()

◆ processRuntimeDatabaseUpdates()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::processRuntimeDatabaseUpdates (   $extensionKey)
protected

Gets all database updates due to runtime configuration, like caching framework or category api for example

Parameters
string$extensionKey

Definition at line 403 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\emitTablesDefinitionIsBeingBuiltSignal(), and TYPO3\CMS\Extensionmanager\Utility\InstallUtility\updateDbWithExtTablesSql().

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\processExtensionSetup().

◆ reloadAvailableExtensions()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::reloadAvailableExtensions ( )

Reset and reload the available extensions

Definition at line 246 of file InstallUtility.php.

◆ reloadCaches()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::reloadCaches ( )

◆ reloadOpcache()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::reloadOpcache ( )
protected

◆ reloadPackageInformation()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::reloadPackageInformation (   $extensionKey)

Reloads the package information, if the package is already registered

Parameters
string$extensionKey
Exceptions

Definition at line 315 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\reloadOpcache().

◆ removeExtension()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::removeExtension (   $extension)

Remove an extension (delete the directory)

Parameters
string$extension
Exceptions
ExtensionManagerException
Returns
void

Definition at line 549 of file InstallUtility.php.

◆ uninstall()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::uninstall (   $extensionKey)

Helper function to uninstall an extension

Parameters
string$extensionKey
Exceptions
ExtensionManagerException
Returns
void

Definition at line 215 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\unloadExtension().

◆ unloadExtension()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::unloadExtension (   $extensionKey)
protected

Wrapper function for unloading extensions

Parameters
string$extensionKey
Returns
void

Definition at line 268 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\emitAfterExtensionUninstallSignal().

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\uninstall().

◆ updateDbWithExtTablesSql()

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::updateDbWithExtTablesSql (   $rawDefinitions)

Update database / process db updates from ext_tables

Parameters
string$rawDefinitionsThe raw SQL statements from ext_tables.sql
Exceptions
ExtensionManagerException
Returns
void

Definition at line 478 of file InstallUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\InstallUtility\getDatabaseConnection().

Referenced by TYPO3\CMS\Extensionmanager\Utility\InstallUtility\processDatabaseUpdates(), and TYPO3\CMS\Extensionmanager\Utility\InstallUtility\processRuntimeDatabaseUpdates().

Member Data Documentation

◆ $cacheManager

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::$cacheManager
protected

◆ $databaseUtility

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::$databaseUtility
protected

◆ $dependencyUtility

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::$dependencyUtility
protected

◆ $extensionRepository

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::$extensionRepository

◆ $fileHandlingUtility

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::$fileHandlingUtility
protected

◆ $installToolSqlParser

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::$installToolSqlParser

◆ $listUtility

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::$listUtility
protected

◆ $objectManager

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::$objectManager

◆ $packageManager

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::$packageManager
protected

◆ $registry

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::$registry
protected

◆ $signalSlotDispatcher

TYPO3\CMS\Extensionmanager\Utility\InstallUtility::$signalSlotDispatcher
protected