‪TYPO3CMS  ‪main
TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility Class Reference
Inheritance diagram for TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility:

Public Member Functions

 __construct (private readonly PackageManager $packageManager, private readonly EmConfUtility $emConfUtility, private readonly OpcodeCacheService $opcodeCacheService, private readonly ZipService $zipService, LanguageServiceFactory $languageServiceFactory,)
 
 unpackExtensionFromExtensionDataArray (string $extensionKey, array $extensionData, string $pathType='Local')
 
 getExtensionDir (string $extensionKey, string $pathType='Local')
 
 removeDirectory (string $extDirPath)
 
 unzipExtensionFromFile (string $file, string $fileName, string $pathType='Local')
 

Protected Member Functions

 extractDirectoriesFromExtensionData (array $files)
 
 createDirectoriesForExtensionFiles (array $directories, string $rootPath)
 
 writeExtensionFiles (array $files, string $rootPath)
 
 makeAndClearExtensionDir (string $extensionKey, string $pathType='Local')
 
 addDirectory (string $extDirPath)
 
 writeEmConfToFile (string $extensionKey, array $emConfData, string $rootPath)
 
 getRelativePath (string $absolutePath)
 
 reloadPackageInformation (string $extensionKey)
 

Private Attributes

LanguageService $languageService
 

Detailed Description

Utility for dealing with files and folders.

This class is a specific ExtensionManager implementation and is not part of the Public TYPO3 API.

Definition at line 37 of file FileHandlingUtility.php.

Constructor & Destructor Documentation

◆ __construct()

TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::__construct ( private readonly PackageManager  $packageManager,
private readonly EmConfUtility  $emConfUtility,
private readonly OpcodeCacheService  $opcodeCacheService,
private readonly ZipService  $zipService,
LanguageServiceFactory  $languageServiceFactory 
)

Member Function Documentation

◆ addDirectory()

TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::addDirectory ( string  $extDirPath)
protected

Add specified directory

Exceptions
ExtensionManagerException

Definition at line 213 of file FileHandlingUtility.php.

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

Referenced by TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility\makeAndClearExtensionDir().

◆ createDirectoriesForExtensionFiles()

TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::createDirectoriesForExtensionFiles ( array  $directories,
string  $rootPath 
)
protected

Loops over an array of directories and creates them in the given root path It also creates nested directory structures

Exceptions
ExtensionManagerException

Definition at line 161 of file FileHandlingUtility.php.

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

Referenced by TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility\unpackExtensionFromExtensionDataArray().

◆ extractDirectoriesFromExtensionData()

TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::extractDirectoriesFromExtensionData ( array  $files)
protected

Extract needed directories from given extensionDataFilesArray

Definition at line 143 of file FileHandlingUtility.php.

Referenced by TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility\unpackExtensionFromExtensionDataArray().

◆ getExtensionDir()

TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::getExtensionDir ( string  $extensionKey,
string  $pathType = 'Local' 
)

Returns the installation directory for an extension depending on the installation scope

Parameters
string$pathType‪Extension installation scope (Local,Global,System)
Exceptions
ExtensionManagerException

Definition at line 75 of file FileHandlingUtility.php.

References TYPO3\CMS\Extensionmanager\Domain\Model\Extension\returnInstallPaths().

Referenced by TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility\makeAndClearExtensionDir().

◆ getRelativePath()

TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::getRelativePath ( string  $absolutePath)
protected

Returns relative path

Definition at line 241 of file FileHandlingUtility.php.

References TYPO3\CMS\Core\Utility\PathUtility\stripPathSitePrefix().

◆ makeAndClearExtensionDir()

TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::makeAndClearExtensionDir ( string  $extensionKey,
string  $pathType = 'Local' 
)
protected

Removes the current extension of $type and creates the base folder for the new one (which is going to be imported)

Parameters
string$pathType‪Extension installation scope (Local,Global,System)
Exceptions
ExtensionManagerException

Definition at line 198 of file FileHandlingUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility\addDirectory(), TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility\getExtensionDir(), and TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility\removeDirectory().

Referenced by TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility\unpackExtensionFromExtensionDataArray(), and TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility\unzipExtensionFromFile().

◆ reloadPackageInformation()

TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::reloadPackageInformation ( string  $extensionKey)
protected

◆ removeDirectory()

TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::removeDirectory ( string  $extDirPath)

Remove specified directory

Exceptions
ExtensionManagerException

Definition at line 96 of file FileHandlingUtility.php.

References TYPO3\CMS\Core\Core\Environment\isWindows(), and TYPO3\CMS\Core\Utility\GeneralUtility\rmdir().

Referenced by TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility\makeAndClearExtensionDir().

◆ unpackExtensionFromExtensionDataArray()

◆ unzipExtensionFromFile()

TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::unzipExtensionFromFile ( string  $file,
string  $fileName,
string  $pathType = 'Local' 
)

Unzip an extension.zip.

Parameters
string$file‪path to zip file
string$fileName‪file name
string$pathType‪path type (Local, Global, System)
Exceptions
ExtensionManagerException

Definition at line 126 of file FileHandlingUtility.php.

References TYPO3\CMS\Core\Utility\GeneralUtility\fixPermissions(), and TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility\makeAndClearExtensionDir().

◆ writeEmConfToFile()

TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::writeEmConfToFile ( string  $extensionKey,
array  $emConfData,
string  $rootPath 
)
protected

Constructs emConf and writes it to corresponding file

Definition at line 232 of file FileHandlingUtility.php.

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

Referenced by TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility\unpackExtensionFromExtensionDataArray().

◆ writeExtensionFiles()

TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::writeExtensionFiles ( array  $files,
string  $rootPath 
)
protected

Loops over an array of files and writes them to the given rootPath

Definition at line 184 of file FileHandlingUtility.php.

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

Referenced by TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility\unpackExtensionFromExtensionDataArray().

Member Data Documentation

◆ $languageService

LanguageService TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::$languageService
private

Definition at line 41 of file FileHandlingUtility.php.