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

Public Member Functions

 injectEmConfUtility (\TYPO3\CMS\Extensionmanager\Utility\EmConfUtility $emConfUtility)
 
 injectExtensionRepository (\TYPO3\CMS\Extensionmanager\Domain\Repository\ExtensionRepository $extensionRepository)
 
 injectInstallUtility (\TYPO3\CMS\Extensionmanager\Utility\InstallUtility $installUtility)
 
 injectPackageManager (\TYPO3\CMS\Core\Package\PackageManager $packageManager)
 
 injectSignalSlotDispatcher (\TYPO3\CMS\Extbase\SignalSlot\Dispatcher $signalSlotDispatcher)
 
 getAvailableExtensions ()
 
 reloadAvailableExtensions ()
 
 getExtension ($extensionKey)
 
 getAvailableAndInstalledExtensions (array $availableExtensions)
 
 enrichExtensionsWithEmConfInformation (array $extensions)
 
 enrichExtensionsWithEmConfAndTerInformation (array $extensions)
 
 enrichExtensionsWithIconInformation (array $extensions)
 
 getAvailableAndInstalledExtensionsWithAdditionalInformation ()
 

Protected Member Functions

 emitPackagesMayHaveChangedSignal ()
 
 getInstallTypeForPackage (PackageInterface $package)
 
 getExtensionTerData ($extensionKey, $version)
 

Protected Attributes

 $emConfUtility
 
 $extensionRepository
 
 $installUtility
 
 $packageManager
 
 $signalSlotDispatcher
 
 $availableExtensions = null
 

Detailed Description

Utility for dealing with extension list related functions

: Refactor this API class:

  • The methods depend on each other, they take each others result, that could be done internally
  • There is no good wording to distinguish existing and loaded extensions
  • The name 'listUtility' is not good, the methods could be moved to some 'extensionInformationUtility', or a repository?

Definition at line 31 of file ListUtility.php.

Member Function Documentation

◆ emitPackagesMayHaveChangedSignal()

TYPO3\CMS\Extensionmanager\Utility\ListUtility::emitPackagesMayHaveChangedSignal ( )
protected

Emits packages may have changed signal

Definition at line 150 of file ListUtility.php.

Referenced by TYPO3\CMS\Extensionmanager\Utility\ListUtility\getAvailableExtensions().

◆ enrichExtensionsWithEmConfAndTerInformation()

TYPO3\CMS\Extensionmanager\Utility\ListUtility::enrichExtensionsWithEmConfAndTerInformation ( array  $extensions)

Adds the information from the emconf array and TER to the extension information

Parameters
array$extensions
Returns
array

Definition at line 212 of file ListUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\ListUtility\enrichExtensionsWithEmConfInformation(), and TYPO3\CMS\Extensionmanager\Utility\ListUtility\getExtensionTerData().

Referenced by TYPO3\CMS\Extensionmanager\Utility\ListUtility\getAvailableAndInstalledExtensionsWithAdditionalInformation().

◆ enrichExtensionsWithEmConfInformation()

TYPO3\CMS\Extensionmanager\Utility\ListUtility::enrichExtensionsWithEmConfInformation ( array  $extensions)

Adds the information from the emconf array to the extension information

Parameters
array$extensions
Returns
array

Definition at line 193 of file ListUtility.php.

Referenced by TYPO3\CMS\Extensionmanager\Utility\ListUtility\enrichExtensionsWithEmConfAndTerInformation().

◆ enrichExtensionsWithIconInformation()

TYPO3\CMS\Extensionmanager\Utility\ListUtility::enrichExtensionsWithIconInformation ( array  $extensions)

Adds information about icon size to the extension information

Parameters
array$extensions
Returns
array

Definition at line 268 of file ListUtility.php.

Referenced by TYPO3\CMS\Extensionmanager\Utility\ListUtility\getAvailableAndInstalledExtensionsWithAdditionalInformation().

◆ getAvailableAndInstalledExtensions()

TYPO3\CMS\Extensionmanager\Utility\ListUtility::getAvailableAndInstalledExtensions ( array  $availableExtensions)

Enrich the output of getAvailableExtensions() with an array key installed = 1 if an extension is loaded.

Parameters
array$availableExtensions
Returns
array

Definition at line 177 of file ListUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\ListUtility\$availableExtensions.

Referenced by TYPO3\CMS\Extensionmanager\Utility\ListUtility\getAvailableAndInstalledExtensionsWithAdditionalInformation().

◆ getAvailableAndInstalledExtensionsWithAdditionalInformation()

TYPO3\CMS\Extensionmanager\Utility\ListUtility::getAvailableAndInstalledExtensionsWithAdditionalInformation ( )

◆ getAvailableExtensions()

◆ getExtension()

TYPO3\CMS\Extensionmanager\Utility\ListUtility::getExtension (   $extensionKey)
Parameters
string$extensionKey
Returns
Exceptions

Definition at line 142 of file ListUtility.php.

◆ getExtensionTerData()

TYPO3\CMS\Extensionmanager\Utility\ListUtility::getExtensionTerData (   $extensionKey,
  $version 
)
protected

Tries to find given extension with given version in TER data. If extension is found but not the given version, we return TER data from highest version with version data set to given one.

Parameters
string$extensionKeyKey of the extension
string$versionString representation of version number
Returns
Extension|NULL Extension TER object or NULL if nothing found

Definition at line 240 of file ListUtility.php.

References TYPO3\CMS\Core\Utility\VersionNumberUtility\convertVersionNumberToInteger().

Referenced by TYPO3\CMS\Extensionmanager\Utility\ListUtility\enrichExtensionsWithEmConfAndTerInformation().

◆ getInstallTypeForPackage()

TYPO3\CMS\Extensionmanager\Utility\ListUtility::getInstallTypeForPackage ( PackageInterface  $package)
protected

Returns "System", "Global" or "Local" based on extension position in filesystem.

Parameters
PackageInterface$package
Returns
string

Definition at line 161 of file ListUtility.php.

References TYPO3\CMS\Core\Package\PackageInterface\getPackagePath(), TYPO3\CMS\Core\Utility\GeneralUtility\isFirstPartOfStr(), and TYPO3\CMS\Extensionmanager\Domain\Model\Extension\returnInstallPaths().

Referenced by TYPO3\CMS\Extensionmanager\Utility\ListUtility\getAvailableExtensions().

◆ injectEmConfUtility()

TYPO3\CMS\Extensionmanager\Utility\ListUtility::injectEmConfUtility ( \TYPO3\CMS\Extensionmanager\Utility\EmConfUtility  $emConfUtility)
Parameters
\TYPO3\CMS\Extensionmanager\Utility\EmConfUtility$emConfUtility

Definition at line 66 of file ListUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\ListUtility\$emConfUtility.

◆ injectExtensionRepository()

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

Definition at line 74 of file ListUtility.php.

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

◆ injectInstallUtility()

TYPO3\CMS\Extensionmanager\Utility\ListUtility::injectInstallUtility ( \TYPO3\CMS\Extensionmanager\Utility\InstallUtility  $installUtility)
Parameters
\TYPO3\CMS\Extensionmanager\Utility\InstallUtility$installUtility

Definition at line 82 of file ListUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\ListUtility\$installUtility.

◆ injectPackageManager()

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

Definition at line 90 of file ListUtility.php.

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

◆ injectSignalSlotDispatcher()

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

Definition at line 98 of file ListUtility.php.

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

◆ reloadAvailableExtensions()

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

Reset and reload the available extensions

Definition at line 130 of file ListUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\ListUtility\getAvailableExtensions().

Member Data Documentation

◆ $availableExtensions

◆ $emConfUtility

TYPO3\CMS\Extensionmanager\Utility\ListUtility::$emConfUtility
protected

◆ $extensionRepository

TYPO3\CMS\Extensionmanager\Utility\ListUtility::$extensionRepository
protected

◆ $installUtility

TYPO3\CMS\Extensionmanager\Utility\ListUtility::$installUtility
protected

◆ $packageManager

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

◆ $signalSlotDispatcher

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