Deprecation: #84285 - Protected methods and properties in MoveElementController¶
See forge#84285
Description¶
This file is about third party usage of TYPO3\CMS\Backend\Controller\ContentElement\MoveElementController
.
A series of class properties has been set to protected. They will throw deprecation warnings if called public from outside:
sys_language
page_id
[not scanned]
table
R_URI
input_moveUid
moveUid
makeCopy
perms_clause
[not scanned]
content
All methods not used as entry points by TYPO3\CMS\Backend\Http\RouteDispatcher
will be
removed or set to protected in v10 and throw deprecation warnings if used from a third party:
[not scanned]
init()
[not scanned]
main()
Additionally $GLOBALS['SOBE']
is not set by the MoveElementController
constructor anymore.
Impact¶
Calling one of the above methods or accessing one of the above properties on an instance of
MoveElementController
will throw a deprecation warning in v9 and a PHP fatal in v10.
Affected Installations¶
The extension scanner will find most usages, but may also find some false positives. The most
common property and method names like $content
are not registered and will not be found
if an extension uses that on an instance of MoveElementController
.
In general all extensions that set properties or call methods except mainAction()
are affected.
Migration¶
In general, extensions should not instantiate and re-use controllers of the core. Existing usages should be rewritten to be free of calls like these.