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

Public Member Functions

 injectObjectManager (\TYPO3\CMS\Extbase\Object\ObjectManager $objectManager)
 
 injectExtensionRepository (\TYPO3\CMS\Extensionmanager\Domain\Repository\ExtensionRepository $extensionRepository)
 
 injectListUtility (\TYPO3\CMS\Extensionmanager\Utility\ListUtility $listUtility)
 
 injectEmConfUtility (\TYPO3\CMS\Extensionmanager\Utility\EmConfUtility $emConfUtility)
 
 injectManagementService (\TYPO3\CMS\Extensionmanager\Service\ExtensionManagementService $managementService)
 
 setLocalExtensionStorage ($localExtensionStorage)
 
 setSkipDependencyCheck ($skipDependencyCheck)
 
 hasDependencyErrors ()
 
 getDependencyErrors ()
 
 findInstalledExtensionsThatDependOnMe ($extensionKey)
 
 filterYoungestVersionOfExtensionList (array $extensions, $showUnsuitable)
 

Protected Member Functions

 setAvailableExtensions ()
 
 checkTypo3Dependency (Dependency $dependency)
 
 checkPhpDependency (Dependency $dependency)
 
 checkExtensionDependency (Dependency $dependency)
 
 getExtensionFromRepository ($extensionKey, Dependency $dependency)
 
 getExtensionFromInExtensionRepository ($extensionKey)
 
 getExtensionFromTer ($extensionKey, Dependency $dependency)
 
 isDependentExtensionLoaded ($extensionKey)
 
 isLoadedVersionCompatible (Dependency $dependency)
 
 isVersionCompatible ($version, Dependency $dependency)
 
 isDependentExtensionAvailable ($extensionKey)
 
 isAvailableVersionCompatible (Dependency $dependency)
 
 isExtensionDownloadableFromTer ($extensionKey)
 
 isDownloadableVersionCompatible (Dependency $dependency)
 
 getLatestCompatibleExtensionByIntegerVersionDependency (Dependency $dependency)
 
 getLowestAndHighestIntegerVersions (Dependency $dependency)
 

Protected Attributes

 $objectManager
 
 $extensionRepository
 
 $listUtility
 
 $emConfUtility
 
 $managementService
 
 $availableExtensions = []
 
 $localExtensionStorage = ''
 
 $dependencyErrors = []
 
 $skipDependencyCheck = false
 

Detailed Description

Utility for dealing with dependencies

Definition at line 26 of file DependencyUtility.php.

Member Function Documentation

◆ checkExtensionDependency()

◆ checkPhpDependency()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::checkPhpDependency ( Dependency  $dependency)
protected

Returns true if current php version fulfills extension requirements

Parameters
Dependency$dependency
Exceptions
Exception

Definition at line 242 of file DependencyUtility.php.

References TYPO3\CMS\Extensionmanager\Domain\Model\Dependency\getHighestVersion(), TYPO3\CMS\Extensionmanager\Domain\Model\Dependency\getIdentifier(), and TYPO3\CMS\Extensionmanager\Domain\Model\Dependency\getLowestVersion().

◆ checkTypo3Dependency()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::checkTypo3Dependency ( Dependency  $dependency)
protected

◆ filterYoungestVersionOfExtensionList()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::filterYoungestVersionOfExtensionList ( array  $extensions,
  $showUnsuitable 
)

Gets a list of various extensions in various versions and returns a filtered list containing the extension-version combination with the highest version number.

Parameters
Extension[]$extensions
bool$showUnsuitable
Returns
[]

Definition at line 623 of file DependencyUtility.php.

◆ findInstalledExtensionsThatDependOnMe()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::findInstalledExtensionsThatDependOnMe (   $extensionKey)
Parameters
string$extensionKey
Returns
array

Definition at line 572 of file DependencyUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\checkTypo3Dependency().

◆ getDependencyErrors()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::getDependencyErrors ( )

Return the dependency errors

Returns
array

Definition at line 198 of file DependencyUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\$dependencyErrors.

◆ getExtensionFromInExtensionRepository()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::getExtensionFromInExtensionRepository (   $extensionKey)
protected

Gets an extension from the in extension repository (the local extension storage)

Parameters
string$extensionKey
Returns
bool

Definition at line 375 of file DependencyUtility.php.

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

Referenced by TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\getExtensionFromRepository().

◆ getExtensionFromRepository()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::getExtensionFromRepository (   $extensionKey,
Dependency  $dependency 
)
protected

Get an extension from a repository (might be in the extension itself or the TER)

Parameters
string$extensionKey
Dependency$dependency
Returns
void
Exceptions
Exception

Definition at line 361 of file DependencyUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\getExtensionFromInExtensionRepository(), and TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\getExtensionFromTer().

Referenced by TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\checkExtensionDependency().

◆ getExtensionFromTer()

◆ getLatestCompatibleExtensionByIntegerVersionDependency()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::getLatestCompatibleExtensionByIntegerVersionDependency ( Dependency  $dependency)
protected

Get the latest compatible version of an extension that fulfills the given dependency from TER

Parameters
Dependency$dependency
Returns
Extension

Definition at line 539 of file DependencyUtility.php.

References TYPO3\CMS\Extensionmanager\Domain\Model\Dependency\getIdentifier(), and TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\getLowestAndHighestIntegerVersions().

Referenced by TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\getExtensionFromTer().

◆ getLowestAndHighestIntegerVersions()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::getLowestAndHighestIntegerVersions ( Dependency  $dependency)
protected

◆ hasDependencyErrors()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::hasDependencyErrors ( )

Returns TRUE if a dependency error was found

Returns
bool

Definition at line 188 of file DependencyUtility.php.

◆ injectEmConfUtility()

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

Definition at line 100 of file DependencyUtility.php.

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

◆ injectExtensionRepository()

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

Definition at line 84 of file DependencyUtility.php.

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

◆ injectListUtility()

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

Definition at line 92 of file DependencyUtility.php.

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

◆ injectManagementService()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::injectManagementService ( \TYPO3\CMS\Extensionmanager\Service\ExtensionManagementService  $managementService)
Parameters
\TYPO3\CMS\Extensionmanager\Service\ExtensionManagementService$managementService

Definition at line 108 of file DependencyUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\$managementService.

◆ injectObjectManager()

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

Definition at line 76 of file DependencyUtility.php.

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

◆ isAvailableVersionCompatible()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::isAvailableVersionCompatible ( Dependency  $dependency)
protected

◆ isDependentExtensionAvailable()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::isDependentExtensionAvailable (   $extensionKey)
protected

Checks whether the needed extension is available (not necessarily installed, but present in system)

Parameters
string$extensionKey
Returns
bool

Definition at line 487 of file DependencyUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\setAvailableExtensions().

Referenced by TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\checkExtensionDependency().

◆ isDependentExtensionLoaded()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::isDependentExtensionLoaded (   $extensionKey)
protected

◆ isDownloadableVersionCompatible()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::isDownloadableVersionCompatible ( Dependency  $dependency)
protected

Checks whether a compatible version of the extension exists in TER

Parameters
Dependency$dependency
Returns
bool

Definition at line 523 of file DependencyUtility.php.

References TYPO3\CMS\Extensionmanager\Domain\Model\Dependency\getIdentifier(), and TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\getLowestAndHighestIntegerVersions().

Referenced by TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\getExtensionFromTer().

◆ isExtensionDownloadableFromTer()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::isExtensionDownloadableFromTer (   $extensionKey)
protected

Checks whether a ter extension with $extensionKey exists

Parameters
string$extensionKey
Returns
bool

Definition at line 512 of file DependencyUtility.php.

Referenced by TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\getExtensionFromTer().

◆ isLoadedVersionCompatible()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::isLoadedVersionCompatible ( Dependency  $dependency)
protected

◆ isVersionCompatible()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::isVersionCompatible (   $version,
Dependency  $dependency 
)
protected

◆ setAvailableExtensions()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::setAvailableExtensions ( )
protected

Setter for available extensions gets available extensions from list utility if not already done

Returns
void

Definition at line 128 of file DependencyUtility.php.

Referenced by TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\isAvailableVersionCompatible(), and TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\isDependentExtensionAvailable().

◆ setLocalExtensionStorage()

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::setLocalExtensionStorage (   $localExtensionStorage)
Parameters
string$localExtensionStorage
Returns
void

Definition at line 117 of file DependencyUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\DependencyUtility\$localExtensionStorage.

◆ setSkipDependencyCheck()

Member Data Documentation

◆ $availableExtensions

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::$availableExtensions = []
protected

Definition at line 56 of file DependencyUtility.php.

◆ $dependencyErrors

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::$dependencyErrors = []
protected

◆ $emConfUtility

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

◆ $extensionRepository

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

◆ $listUtility

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

◆ $localExtensionStorage

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::$localExtensionStorage = ''
protected

◆ $managementService

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::$managementService
protected

◆ $objectManager

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::$objectManager
protected

◆ $skipDependencyCheck

TYPO3\CMS\Extensionmanager\Utility\DependencyUtility::$skipDependencyCheck = false
protected