‪TYPO3CMS  10.4
TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility Class Reference
Inheritance diagram for TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility:
TYPO3\CMS\Core\SingletonInterface

Public Member Functions

 injectEmConfUtility (EmConfUtility $emConfUtility)
 
 injectInstallUtility (InstallUtility $installUtility)
 
 injectLanguageService (LanguageService $languageService)
 
 initializeObject ()
 
 unpackExtensionFromExtensionDataArray (array $extensionData, Extension $extension=null, $pathType='Local')
 
string getExtensionDir ($extensionKey, $pathType='Local')
 
 removeDirectory ($extDirPath)
 
bool isValidExtensionPath ($path)
 
string getAbsoluteExtensionPath (string $extensionKey)
 
string createZipFileFromExtension ($extensionKey)
 
 unzipExtensionFromFile ($file, $fileName, $pathType='Local')
 

Protected Member Functions

array extractDirectoriesFromExtensionData (array $files)
 
mixed extractFilesArrayFromExtensionData (array $extensionData)
 
 createDirectoriesForExtensionFiles (array $directories, $rootPath)
 
 createNestedDirectory ($directory)
 
 writeExtensionFiles (array $files, $rootPath)
 
string makeAndClearExtensionDir ($extensionKey, $pathType='Local')
 
 addDirectory ($extDirPath)
 
 writeEmConfToFile (array $extensionData, $rootPath, Extension $extension=null)
 
string getAbsolutePath ($relativePath)
 
string getRelativePath (string $absolutePath)
 
string getExtensionVersion (string $extensionKey)
 
 reloadPackageInformation ($extensionKey)
 

Protected Attributes

EmConfUtility $emConfUtility
 
InstallUtility $installUtility
 
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 34 of file FileHandlingUtility.php.

Member Function Documentation

◆ addDirectory()

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

Add specified directory

Parameters
string$extDirPath
Exceptions
ExtensionManagerException

Definition at line 223 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,
  $rootPath 
)
protected

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

Parameters
array$directories
string$rootPath

Definition at line 137 of file FileHandlingUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility\createNestedDirectory().

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

◆ createNestedDirectory()

TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::createNestedDirectory (   $directory)
protected

Wrapper for utility method to create directory recursively

Parameters
string$directory‪Absolute path
Exceptions
ExtensionManagerException

Definition at line 150 of file FileHandlingUtility.php.

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

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

◆ createZipFileFromExtension()

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

◆ extractDirectoriesFromExtensionData()

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

Extract needed directories from given extensionDataFilesArray

Parameters
array$files
Returns
‪array

Definition at line 107 of file FileHandlingUtility.php.

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

◆ extractFilesArrayFromExtensionData()

mixed TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::extractFilesArrayFromExtensionData ( array  $extensionData)
protected

Returns the "FILES" part from the data array

Parameters
array$extensionData
Returns
‪mixed

Definition at line 125 of file FileHandlingUtility.php.

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

◆ getAbsoluteExtensionPath()

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

Get extension path for an available or installed extension

Parameters
string$extensionKey
Returns
‪string

Definition at line 333 of file FileHandlingUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility\getAbsolutePath().

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

◆ getAbsolutePath()

string TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::getAbsolutePath (   $relativePath)
protected

Returns absolute path

Parameters
string$relativePath
Exceptions
ExtensionManagerException
Returns
‪string

Definition at line 307 of file FileHandlingUtility.php.

References TYPO3\CMS\Core\Core\Environment\getPublicPath().

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

◆ getExtensionDir()

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

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

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

Definition at line 203 of file FileHandlingUtility.php.

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

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

◆ getExtensionVersion()

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

Get version of an available or installed extension

Parameters
string$extensionKey
Returns
‪string

Definition at line 345 of file FileHandlingUtility.php.

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

◆ getRelativePath()

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

Returns relative path

Parameters
string$absolutePath
Returns
‪string

Definition at line 322 of file FileHandlingUtility.php.

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

◆ initializeObject()

TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::initializeObject ( )

Initialize method - loads language file

Definition at line 77 of file FileHandlingUtility.php.

◆ injectEmConfUtility()

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

Definition at line 53 of file FileHandlingUtility.php.

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

◆ injectInstallUtility()

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

◆ injectLanguageService()

TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::injectLanguageService ( LanguageService  $languageService)
Parameters
LanguageService$languageService

Definition at line 69 of file FileHandlingUtility.php.

References TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility\$languageService.

◆ isValidExtensionPath()

bool TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::isValidExtensionPath (   $path)

Is the given path a valid path for extension installation

Parameters
string$path‪the absolute (!) path in question
Returns
‪bool

Definition at line 289 of file FileHandlingUtility.php.

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

◆ makeAndClearExtensionDir()

string TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::makeAndClearExtensionDir (   $extensionKey,
  $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$extensionKey
string$pathType‪Extension installation scope (Local,Global,System)
Exceptions
ExtensionManagerException
Returns
‪string

Definition at line 184 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 (   $extensionKey)
protected

◆ removeDirectory()

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

Remove specified directory

Parameters
string$extDirPath
Exceptions
ExtensionManagerException

Definition at line 240 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 (   $file,
  $fileName,
  $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 420 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 ( array  $extensionData,
  $rootPath,
Extension  $extension = null 
)
protected

Constructs emConf and writes it to corresponding file In case the file has been extracted already, the properties of the meta data take precedence but are merged with the present ext_emconf.php

Parameters
array$extensionData
string$rootPath
Extension$extension

Definition at line 265 of file FileHandlingUtility.php.

References TYPO3\CMS\Core\Utility\PathUtility\stripPathSitePrefix(), and TYPO3\CMS\Core\Utility\GeneralUtility\writeFile().

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

◆ writeExtensionFiles()

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

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

Parameters
array$files
string$rootPath

Definition at line 168 of file FileHandlingUtility.php.

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

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

Member Data Documentation

◆ $emConfUtility

EmConfUtility TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::$emConfUtility
protected

◆ $installUtility

InstallUtility TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility::$installUtility
protected

◆ $languageService

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