Feature: #89577 - New PSR-14 based events for File Abstraction Layer

See forge#89577

Description

The following new PSR-14 based Events have been introduced:

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFileAddedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFileAddedToIndexEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFileContentsSetEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFileCopiedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFileCreatedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFileDeletedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFileMarkedAsMissingEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFileMetaDataCreatedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFileMetaDataDeletedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFileMetaDataUpdatedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFileMovedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFileProcessingEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFileRemovedFromIndexEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFileRenamedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFileReplacedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFileUpdatedInIndexEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFolderAddedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFolderCopiedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFolderDeletedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFolderMovedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterFolderRenamedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\AfterResourceStorageInitializationEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\BeforeFileAddedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\BeforeFileContentsSetEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\BeforeFileCopiedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\BeforeFileCreatedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\BeforeFileDeletedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\BeforeFileMovedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\BeforeFileProcessingEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\BeforeFileRenamedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\BeforeFileReplacedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\BeforeFolderAddedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\BeforeFolderCopiedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\BeforeFolderDeletedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\BeforeFolderMovedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\BeforeFolderRenamedEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\BeforeResourceStorageInitializationEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\EnrichFileMetaDataEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\GeneratePublicUrlForResourceEvent

  • \TYPO3\CMS\Core\Classes\Resource\Event\SanitizeFileNameEvent

They replace the existing Extbase Signal Slots in the File Abstraction Layer.

Impact

All existing signals and their registered slots will work exactly the same as before, however it is highly encouraged to migrate to the new PSR-14 based events.

In addition, all Core hooks using these events have been migrated to new PSR-14 events, all new Events have a description when to use them and what the benefits are.

The Event AfterFileCopiedEvent in addition also contains the newly created File object.

Have a look at the new PHP classes to understand the Events and to learn more about PSR-14.