‪TYPO3CMS  ‪main
DispatchAfterPackageActivationEventOnPackageInitialization.php
Go to the documentation of this file.
1 <?php
2 
3 declare(strict_types=1);
4 
5 /*
6  * This file is part of the TYPO3 CMS project.
7  *
8  * It is free software; you can redistribute it and/or modify it under
9  * the terms of the GNU General Public License, either version 2
10  * of the License, or any later version.
11  *
12  * For the full copyright and license information, please read the
13  * LICENSE.txt file that was distributed with this source code.
14  *
15  * The TYPO3 project - inspiring people to share!
16  */
17 
19 
20 use Psr\EventDispatcher\EventDispatcherInterface;
25 
30 {
31  #[AsEventListener]
32  public function ‪__invoke(‪PackageInitializationEvent $event): void
33  {
34  // Only dispatch event in case package activation has been triggered via InstallUtility
35  if (($container = $event->‪getContainer()) === null
36  || !(($emitter = $event->‪getEmitter()) instanceof ‪InstallUtility)
37  ) {
38  return;
39  }
40 
41  $container->get(EventDispatcherInterface::class)->dispatch(
43  $event->‪getExtensionKey(),
44  'typo3-cms-extension',
45  $emitter
46  )
47  );
48  }
49 }
‪TYPO3\CMS\Core\Attribute\AsEventListener
Definition: AsEventListener.php:25
‪TYPO3\CMS\Core\Package\Event\PackageInitializationEvent\getExtensionKey
‪getExtensionKey()
Definition: PackageInitializationEvent.php:42
‪TYPO3\CMS\Core\Package\Event\PackageInitializationEvent\getContainer
‪getContainer()
Definition: PackageInitializationEvent.php:52
‪TYPO3\CMS\Extensionmanager\Initialization\DispatchAfterPackageActivationEventOnPackageInitialization\__invoke
‪__invoke(PackageInitializationEvent $event)
Definition: DispatchAfterPackageActivationEventOnPackageInitialization.php:32
‪TYPO3\CMS\Extensionmanager\Utility\InstallUtility
Definition: InstallUtility.php:40
‪TYPO3\CMS\Core\Package\Event\PackageInitializationEvent
Definition: PackageInitializationEvent.php:30
‪TYPO3\CMS\Core\Package\Event\PackageInitializationEvent\getEmitter
‪getEmitter()
Definition: PackageInitializationEvent.php:57
‪TYPO3\CMS\Core\Package\Event\AfterPackageActivationEvent
Definition: AfterPackageActivationEvent.php:24
‪TYPO3\CMS\Extensionmanager\Initialization\DispatchAfterPackageActivationEventOnPackageInitialization
Definition: DispatchAfterPackageActivationEventOnPackageInitialization.php:30
‪TYPO3\CMS\Extensionmanager\Initialization
Definition: DispatchAfterPackageActivationEventOnPackageInitialization.php:18