‪TYPO3CMS  9.5
TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController Class Reference
Inheritance diagram for TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController:
TYPO3\CMS\Extensionmanager\Controller\AbstractController TYPO3\CMS\Core\Security\BlockSerializationTrait TYPO3\CMS\Extbase\Mvc\Controller\ActionController TYPO3\CMS\Extbase\Mvc\Controller\AbstractController TYPO3\CMS\Extbase\Mvc\Controller\ControllerInterface

Public Member Functions

 injectExtensionRepository (\TYPO3\CMS\Extensionmanager\Domain\Repository\ExtensionRepository $extensionRepository)
 
 injectFileHandlingUtility (\TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility $fileHandlingUtility)
 
 injectTerUtility (\TYPO3\CMS\Extensionmanager\Utility\Connection\TerUtility $terUtility)
 
 injectManagementService (\TYPO3\CMS\Extensionmanager\Service\ExtensionManagementService $managementService)
 
 __destruct ()
 
 formAction ()
 
 extractAction ($overwrite=false)
 
 checkFileName ($fileName)
 
array extractExtensionFromFile ($uploadPath, $fileName, $overwrite)
 
bool activateExtension ($extensionKey)
 
- ‪Public Member Functions inherited from ‪TYPO3\CMS\Extbase\Mvc\Controller\ActionController
 injectReflectionService (\TYPO3\CMS\Extbase\Reflection\ReflectionService $reflectionService)
 
 injectCacheService (\TYPO3\CMS\Extbase\Service\CacheService $cacheService)
 
 injectMvcPropertyMappingConfigurationService (\TYPO3\CMS\Extbase\Mvc\Controller\MvcPropertyMappingConfigurationService $mvcPropertyMappingConfigurationService)
 
 processRequest (\TYPO3\CMS\Extbase\Mvc\RequestInterface $request, \TYPO3\CMS\Extbase\Mvc\ResponseInterface $response)
 
- ‪Public Member Functions inherited from ‪TYPO3\CMS\Extbase\Mvc\Controller\AbstractController
 injectSignalSlotDispatcher (\TYPO3\CMS\Extbase\SignalSlot\Dispatcher $signalSlotDispatcher)
 
 injectValidatorResolver (\TYPO3\CMS\Extbase\Validation\ValidatorResolver $validatorResolver)
 
ControllerContext getControllerContext ()
 
 __construct ()
 
 injectConfigurationManager (ConfigurationManagerInterface $configurationManager)
 
 injectObjectManager (\TYPO3\CMS\Extbase\Object\ObjectManagerInterface $objectManager)
 
 addFlashMessage ($messageBody, $messageTitle='', $severity=\TYPO3\CMS\Core\Messaging\AbstractMessage::OK, $storeInSession=true)
 
bool canProcessRequest (\TYPO3\CMS\Extbase\Mvc\RequestInterface $request)
 
 forward ($actionName, $controllerName=null, $extensionName=null, array $arguments=null)
 
 throwStatus ($statusCode, $statusMessage=null, $content=null)
 
 initializeControllerArgumentsBaseValidators ()
 
- ‪Public Member Functions inherited from ‪TYPO3\CMS\Core\Security\BlockSerializationTrait
 __wakeup ()
 

Protected Member Functions

array getExtensionFromT3xFile ($file, $overwrite=false)
 
array getExtensionFromZipFile ($file, $fileName, $overwrite=false)
 
string getExtensionKeyFromFileName ($fileName)
 
 copyExtensionFolderToTempFolder ($extensionKey)
 
 removeExtensionAndRestoreFromBackup ($fileName)
 
 removeBackupFolder ()
 
- ‪Protected Member Functions inherited from ‪TYPO3\CMS\Extensionmanager\Controller\AbstractController
string null translate ($key, $arguments=null)
 
 handleTriggerArguments ()
 
- ‪Protected Member Functions inherited from ‪TYPO3\CMS\Extbase\Mvc\Controller\ActionController
 renderAssetsForRequest ($request)
 
 initializeActionMethodArguments ()
 
 initializeActionMethodValidators ()
 
string resolveActionMethodName ()
 
 callActionMethod ()
 
 emitBeforeCallActionMethodSignal (array $preparedArguments)
 
ViewInterface resolveView ()
 
 setViewConfiguration (ViewInterface $view)
 
array getViewProperty ($extbaseFrameworkConfiguration, $setting)
 
mixed resolveViewObjectName ()
 
 initializeView (ViewInterface $view)
 
 initializeAction ()
 
string errorAction ()
 
 clearCacheOnError ()
 
 addErrorFlashMessage ()
 
string getErrorFlashMessage ()
 
 forwardToReferringRequest ()
 
string getFlattenedValidationErrorMessage ()
 
- ‪Protected Member Functions inherited from ‪TYPO3\CMS\Extbase\Mvc\Controller\AbstractController
TYPO3 CMS Extbase Mvc Controller ControllerContext buildControllerContext ()
 
 redirect ($actionName, $controllerName=null, $extensionName=null, array $arguments=null, $pageUid=null, $delay=0, $statusCode=303)
 
 redirectToUri ($uri, $delay=0, $statusCode=303)
 
string addBaseUriIfNecessary ($uri)
 
 mapRequestArgumentsToControllerArguments ()
 

Protected Attributes

TYPO3 CMS Extensionmanager Domain Repository ExtensionRepository $extensionRepository
 
TYPO3 CMS Extensionmanager Utility FileHandlingUtility $fileHandlingUtility
 
TYPO3 CMS Extensionmanager Utility Connection TerUtility $terUtility
 
TYPO3 CMS Extensionmanager Service ExtensionManagementService $managementService
 
string $extensionBackupPath = ''
 
bool $removeFromOriginalPath = false
 
- ‪Protected Attributes inherited from ‪TYPO3\CMS\Extensionmanager\Controller\AbstractController
array $triggerArguments
 
- ‪Protected Attributes inherited from ‪TYPO3\CMS\Extbase\Mvc\Controller\ActionController
TYPO3 CMS Extbase Reflection ReflectionService $reflectionService
 
TYPO3 CMS Extbase Service CacheService $cacheService
 
ViewInterface $view
 
string $namespacesViewObjectNamePattern = '@vendor\@extension\View\@controller\@action@format'
 
array $viewFormatToObjectNameMap = array( )
 
string $defaultViewObjectName = \TYPO3\CMS\Fluid\View\TemplateView::class
 
string $actionMethodName = 'indexAction'
 
string $errorMethodName = 'errorAction'
 
TYPO3 CMS Extbase Mvc Controller MvcPropertyMappingConfigurationService $mvcPropertyMappingConfigurationService
 
TYPO3 CMS Extbase Mvc Request $request
 
TYPO3 CMS Extbase Mvc Response $response
 
- ‪Protected Attributes inherited from ‪TYPO3\CMS\Extbase\Mvc\Controller\AbstractController
TYPO3 CMS Extbase SignalSlot Dispatcher $signalSlotDispatcher
 
TYPO3 CMS Extbase Object ObjectManagerInterface $objectManager
 
TYPO3 CMS Extbase Mvc Web Routing UriBuilder $uriBuilder
 
string $extensionName
 
array $settings
 
TYPO3 CMS Extbase Mvc RequestInterface $request
 
TYPO3 CMS Extbase Mvc ResponseInterface $response
 
TYPO3 CMS Extbase Validation ValidatorResolver $validatorResolver
 
TYPO3 CMS Extbase Mvc Controller Arguments $arguments
 
array $supportedRequestTypes = array( \TYPO3\CMS\Extbase\Mvc\Request::class )
 
TYPO3 CMS Extbase Mvc Controller ControllerContext $controllerContext
 
ConfigurationManagerInterface $configurationManager
 

Additional Inherited Members

- ‪Static Public Member Functions inherited from ‪TYPO3\CMS\Extbase\Mvc\Controller\ActionController
static array getActionMethodParameters ($objectManager)
 
- ‪Public Attributes inherited from ‪TYPO3\CMS\Extensionmanager\Controller\AbstractController
const TRIGGER_RefreshModuleMenu = 'refreshModuleMenu'
 
const TRIGGER_RefreshTopbar = 'refreshTopbar'
 

Detailed Description

Controller for handling upload of a local extension file Handles .t3x or .zip files

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

Definition at line 30 of file UploadExtensionFileController.php.

Constructor & Destructor Documentation

◆ __destruct()

TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::__destruct ( )

Remove backup folder before destruction

Definition at line 92 of file UploadExtensionFileController.php.

References TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\removeBackupFolder().

Member Function Documentation

◆ activateExtension()

bool TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::activateExtension (   $extensionKey)
Parameters
string$extensionKey
Returns
‪bool

Definition at line 213 of file UploadExtensionFileController.php.

Referenced by TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\extractAction().

◆ checkFileName()

TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::checkFileName (   $fileName)

Validate the filename of an uploaded file

Parameters
string$fileName
Exceptions

Definition at line 176 of file UploadExtensionFileController.php.

Referenced by TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\extractAction().

◆ copyExtensionFolderToTempFolder()

TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::copyExtensionFolderToTempFolder (   $extensionKey)
protected

◆ extractAction()

◆ extractExtensionFromFile()

array TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::extractExtensionFromFile (   $uploadPath,
  $fileName,
  $overwrite 
)

Extract a given t3x or zip file

Parameters
string$uploadPath‪Path to existing extension file
string$fileName‪Filename of the uploaded file
bool$overwrite‪If true, extension will be replaced
Returns
‪array Extension data
Exceptions
ExtensionManagerException
DependencyConfigurationNotFoundException

Definition at line 197 of file UploadExtensionFileController.php.

References TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\getExtensionFromT3xFile(), and TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\getExtensionFromZipFile().

Referenced by TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\extractAction().

◆ formAction()

TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::formAction ( )

Render upload extension form

Definition at line 100 of file UploadExtensionFileController.php.

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

◆ getExtensionFromT3xFile()

array TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::getExtensionFromT3xFile (   $file,
  $overwrite = false 
)
protected

Extracts a given t3x file and installs the extension

Parameters
string$file‪Path to uploaded file
bool$overwrite‪Overwrite existing extension if TRUE
Exceptions
ExtensionManagerException
DependencyConfigurationNotFoundException
Returns
‪array

Definition at line 229 of file UploadExtensionFileController.php.

References TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\copyExtensionFolderToTempFolder(), and TYPO3\CMS\Extensionmanager\Controller\AbstractController\translate().

Referenced by TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\extractExtensionFromFile().

◆ getExtensionFromZipFile()

array TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::getExtensionFromZipFile (   $file,
  $fileName,
  $overwrite = false 
)
protected

Extracts a given zip file and installs the extension As there is no information about the extension key in the zip we have to use the file name to get that information filename format is expected to be extensionkey_version.zip

Parameters
string$file‪Path to uploaded file
string$fileName‪Filename (basename) of uploaded file
bool$overwrite‪Overwrite existing extension if TRUE
Returns
‪array
Exceptions
ExtensionManagerException

Definition at line 273 of file UploadExtensionFileController.php.

References TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\copyExtensionFolderToTempFolder(), and TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\getExtensionKeyFromFileName().

Referenced by TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\extractExtensionFromFile().

◆ getExtensionKeyFromFileName()

string TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::getExtensionKeyFromFileName (   $fileName)
protected

Removes version and file extension from filename to determine extension key

Parameters
string$fileName
Returns
‪string

Definition at line 296 of file UploadExtensionFileController.php.

Referenced by TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\getExtensionFromZipFile(), and TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\removeExtensionAndRestoreFromBackup().

◆ injectExtensionRepository()

TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::injectExtensionRepository ( \TYPO3\CMS\Extensionmanager\Domain\Repository\ExtensionRepository  $extensionRepository)
Parameters
\TYPO3\CMS\Extensionmanager\Domain\Repository\ExtensionRepository$extensionRepository

Definition at line 60 of file UploadExtensionFileController.php.

References TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\$extensionRepository.

◆ injectFileHandlingUtility()

TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::injectFileHandlingUtility ( \TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility  $fileHandlingUtility)
Parameters
\TYPO3\CMS\Extensionmanager\Utility\FileHandlingUtility$fileHandlingUtility

Definition at line 68 of file UploadExtensionFileController.php.

References TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\$fileHandlingUtility.

◆ injectManagementService()

TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::injectManagementService ( \TYPO3\CMS\Extensionmanager\Service\ExtensionManagementService  $managementService)
Parameters
\TYPO3\CMS\Extensionmanager\Service\ExtensionManagementService$managementService

Definition at line 84 of file UploadExtensionFileController.php.

References TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\$managementService.

◆ injectTerUtility()

TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::injectTerUtility ( \TYPO3\CMS\Extensionmanager\Utility\Connection\TerUtility  $terUtility)
Parameters
\TYPO3\CMS\Extensionmanager\Utility\Connection\TerUtility$terUtility

Definition at line 76 of file UploadExtensionFileController.php.

References TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\$terUtility.

◆ removeBackupFolder()

TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::removeBackupFolder ( )
protected

Removes the backup folder in typo3temp

Definition at line 338 of file UploadExtensionFileController.php.

Referenced by TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\__destruct().

◆ removeExtensionAndRestoreFromBackup()

TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::removeExtensionAndRestoreFromBackup (   $fileName)
protected

Removes the extension directory and restores the extension from the backup directory

Parameters
string$fileName
See also
UploadExtensionFileController::extractAction

Definition at line 323 of file UploadExtensionFileController.php.

References TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\getExtensionKeyFromFileName().

Referenced by TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController\extractAction().

Member Data Documentation

◆ $extensionBackupPath

string TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::$extensionBackupPath = ''
protected

Definition at line 51 of file UploadExtensionFileController.php.

◆ $extensionRepository

TYPO3 CMS Extensionmanager Domain Repository ExtensionRepository TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::$extensionRepository
protected

◆ $fileHandlingUtility

TYPO3 CMS Extensionmanager Utility FileHandlingUtility TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::$fileHandlingUtility
protected

◆ $managementService

TYPO3 CMS Extensionmanager Service ExtensionManagementService TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::$managementService
protected

◆ $removeFromOriginalPath

bool TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::$removeFromOriginalPath = false
protected

Definition at line 55 of file UploadExtensionFileController.php.

◆ $terUtility

TYPO3 CMS Extensionmanager Utility Connection TerUtility TYPO3\CMS\Extensionmanager\Controller\UploadExtensionFileController::$terUtility
protected