55 lines
1.8 KiB
ReStructuredText
55 lines
1.8 KiB
ReStructuredText
.. include:: /Includes.rst.txt
|
|
|
|
.. _breaking-101392-1742741515:
|
|
|
|
=================================================================================
|
|
Breaking: #101392 - getIdentifier() and setIdentifier() from AbstractFile removed
|
|
=================================================================================
|
|
|
|
See :issue:`101392`
|
|
|
|
Description
|
|
===========
|
|
|
|
When using the PHP API of the **File Abstraction Layer (FAL)**, several classes
|
|
are involved in representing file objects.
|
|
|
|
In addition to the
|
|
:php-short:`\TYPO3\CMS\Core\Resource\FileInterface`, there is also the
|
|
:php-short:`\TYPO3\CMS\Core\Resource\AbstractFile` class, from which most file-
|
|
related classes inherit.
|
|
|
|
To ensure stricter type consistency, the abstract class no longer implements
|
|
the methods :php:`getIdentifier()` and :php:`setIdentifier()`. Implementing
|
|
these methods is now the responsibility of each subclass.
|
|
|
|
The methods are now implemented in the respective concrete classes inheriting
|
|
from :php-short:`\TYPO3\CMS\Core\Resource\AbstractFile`.
|
|
|
|
Impact
|
|
======
|
|
|
|
In the unlikely case that the TYPO3 File Abstraction Layer has been extended
|
|
with custom PHP classes derived from
|
|
:php-short:`\TYPO3\CMS\Core\Resource\AbstractFile`, this change will
|
|
cause a fatal PHP error, as the new abstract methods :php:`getIdentifier()` and
|
|
:php:`setIdentifier()` must be implemented by the subclass.
|
|
|
|
Affected installations
|
|
======================
|
|
|
|
TYPO3 installations that include custom code extending the File Abstraction
|
|
Layer are affected. Such cases are considered highly uncommon.
|
|
|
|
Migration
|
|
=========
|
|
|
|
Implement the two methods :php:`getIdentifier()` and :php:`setIdentifier()` in
|
|
any custom file class extending
|
|
:php-short:`\TYPO3\CMS\Core\Resource\AbstractFile`.
|
|
|
|
This can also be implemented in older TYPO3 versions to ensure forward
|
|
compatibility with TYPO3 v14 and later.
|
|
|
|
.. index:: PHP-API, NotScanned, ext:core
|