ListUtility implements SingletonInterface
Utility for dealing with extension list related functions
This class is a specific ExtensionManager implementation and is not part of the Public TYPO3 API.
Tags
Table of Contents
Interfaces
- SingletonInterface
- "empty" interface for singletons (marker interface pattern)
Properties
- $availableExtensions : array<string, array<string, scalar>>|null
- $dependencyUtility : DependencyUtility
- $emConfUtility : EmConfUtility
- $eventDispatcher : EventDispatcherInterface
- $extensionRepository : ExtensionRepository
- $packageManager : PackageManager
Methods
- enrichExtensionsWithEmConfAndTerInformation() : array<string|int, mixed>
- Adds the information from the emconf array and TER to the extension information
- enrichExtensionsWithEmConfInformation() : array<string|int, mixed>
- Adds the information from the emconf array to the extension information
- getAvailableAndInstalledExtensions() : array<string|int, mixed>
- Enrich the output of getAvailableExtensions() with an array key installed = 1 if an extension is loaded.
- getAvailableAndInstalledExtensionsWithAdditionalInformation() : array<string|int, mixed>
- Gets all available and installed extension with additional information from em_conf and TER (if available)
- getAvailableExtensions() : array<string|int, array<string|int, mixed>>
- Returns the list of available, but not necessarily loaded extensions
- getExtension() : PackageInterface
- injectDependencyUtility() : mixed
- injectEmConfUtility() : mixed
- injectEventDispatcher() : mixed
- injectExtensionRepository() : mixed
- injectPackageManager() : mixed
- reloadAvailableExtensions() : void
- Reset and reload the available extensions
- getExtensionTerData() : Extension|null
- Tries to find given extension with given version in TER data.
- getInstallTypeForPackage() : string
- Returns "System" or "Local" based on extension position in filesystem.
- getUpdateableVersion() : Extension|null
- Returns the updateable version for an extension which also resolves dependencies.
Properties
$availableExtensions
protected
array<string, array<string, scalar>>|null
$availableExtensions
$dependencyUtility
protected
DependencyUtility
$dependencyUtility
$emConfUtility
protected
EmConfUtility
$emConfUtility
$eventDispatcher
protected
EventDispatcherInterface
$eventDispatcher
$extensionRepository
protected
ExtensionRepository
$extensionRepository
$packageManager
protected
PackageManager
$packageManager
Methods
enrichExtensionsWithEmConfAndTerInformation()
Adds the information from the emconf array and TER to the extension information
public
enrichExtensionsWithEmConfAndTerInformation(array<string|int, mixed> $extensions) : array<string|int, mixed>
Parameters
- $extensions : array<string|int, mixed>
Return values
array<string|int, mixed>enrichExtensionsWithEmConfInformation()
Adds the information from the emconf array to the extension information
public
enrichExtensionsWithEmConfInformation(array<string|int, mixed> $extensions) : array<string|int, mixed>
Parameters
- $extensions : array<string|int, mixed>
Return values
array<string|int, mixed>getAvailableAndInstalledExtensions()
Enrich the output of getAvailableExtensions() with an array key installed = 1 if an extension is loaded.
public
getAvailableAndInstalledExtensions(array<string|int, mixed> $availableExtensions) : array<string|int, mixed>
Parameters
- $availableExtensions : array<string|int, mixed>
Return values
array<string|int, mixed>getAvailableAndInstalledExtensionsWithAdditionalInformation()
Gets all available and installed extension with additional information from em_conf and TER (if available)
public
getAvailableAndInstalledExtensionsWithAdditionalInformation([string $filter = '' ]) : array<string|int, mixed>
Parameters
- $filter : string = ''
Return values
array<string|int, mixed>getAvailableExtensions()
Returns the list of available, but not necessarily loaded extensions
public
getAvailableExtensions([string $filter = '' ]) : array<string|int, array<string|int, mixed>>
Parameters
- $filter : string = ''
Return values
array<string|int, array<string|int, mixed>> —All extensions with info
getExtension()
public
getExtension(string $extensionKey) : PackageInterface
Parameters
- $extensionKey : string
Return values
PackageInterfaceinjectDependencyUtility()
public
injectDependencyUtility(DependencyUtility $dependencyUtility) : mixed
Parameters
- $dependencyUtility : DependencyUtility
injectEmConfUtility()
public
injectEmConfUtility(EmConfUtility $emConfUtility) : mixed
Parameters
- $emConfUtility : EmConfUtility
injectEventDispatcher()
public
injectEventDispatcher(EventDispatcherInterface $eventDispatcher) : mixed
Parameters
- $eventDispatcher : EventDispatcherInterface
injectExtensionRepository()
public
injectExtensionRepository(ExtensionRepository $extensionRepository) : mixed
Parameters
- $extensionRepository : ExtensionRepository
injectPackageManager()
public
injectPackageManager(PackageManager $packageManager) : mixed
Parameters
- $packageManager : PackageManager
reloadAvailableExtensions()
Reset and reload the available extensions
public
reloadAvailableExtensions() : void
getExtensionTerData()
Tries to find given extension with given version in TER data.
protected
getExtensionTerData(string $extensionKey, string $version) : Extension|null
If extension is found but not the given version, we return TER data from highest version with version data set to given one.
Parameters
- $extensionKey : string
-
Key of the extension
- $version : string
-
String representation of version number
Return values
Extension|null —Extension TER object or NULL if nothing found
getInstallTypeForPackage()
Returns "System" or "Local" based on extension position in filesystem.
protected
getInstallTypeForPackage(PackageInterface $package) : string
Parameters
- $package : PackageInterface
Return values
stringgetUpdateableVersion()
Returns the updateable version for an extension which also resolves dependencies.
protected
getUpdateableVersion(Extension $extensionData) : Extension|null
Parameters
- $extensionData : Extension
Return values
Extension|null —null if no update available otherwise latest possible update