Wichtig
Kleinigkeit
Fehlerbehebung
Wichtig
Die WebFolderUIFactory soll zu einem Modul gemacht werden.
Dabei soll zusätzlich eine Konfigurationsoption für den BreadcrumbRenderer eingebaut werden. Dadurch kann man zum Beispiel konfigurieren, ob der WebFolder Icons in der Breadcrumb benutzen soll oder nicht. Das ist durch #23183 notwendig.
Test
Kein Test: Das Umwandeln eines Singletons in ein Modul benötigt keinen Test.
Code Migration
DefaultBreadcrumbRenderer.Config.getBreadcrumbContentRenderer() wurde von BreadcrumbContentRenderer auf BreadcrumbContentRenderer.Config umgestellt. Die Konfiguration enthält also nicht mehr direkt die Instanz, sondern die Konfiguration.
- DefaultBreadcrumbRenderer.Config.setBreadcrumbContentRenderer(...) wurde gelöscht. Statt dessen kann DefaultBreadcrumbRenderer.setBreadcrumbContentRenderer(...) verwendet werden.
Die Klasse WebFolderUIConfig ist entfallen. Deren Konfig-Optionen sind jetzt Teil der WebFolderUIFactory in der typisierten Konfiguration:
<config service-class="com.top_logic.common.webfolder.ui.WebFolderUIFactory"> <instance class="com.top_logic.common.webfolder.ui.WebFolderUIFactory" provide-zip-download="true" zip-download-file-name-provider="com.top_logic.common.webfolder.ui.commands.ZipDownloadLabelProvider" zip-download-size-limit="1024" zip-folder-name-provider="com.top_logic.common.webfolder.ui.commands.ZipFolderNameProvider" > <breadcrumb-renderer> <contentRenderer resource-provider="com.top_logic.mig.html.NoImageResourceProvider"/> </breadcrumb-renderer> </instance> </config>
Vermutlich ist kein Projekt direkt mit dieser Klasse in Kontakt gekommen. Daher ist die Migrationsanleitung knapp gehalten. Falls es doch solche Fälle gibt und diese nicht selber migriert werden können, einfach bei mir melden.
- Nach WebFolderUIConfig in XML-Dateien suchen. Die Konfigurationen entsprechend umstellen. (Siehe Changesets dieses Tickets.)
- Nach WebFolderUIConfig in Java-Dateien suchen.
- WebFolderUIConfig.INSTANCE durch WebFolderUIFactory.getInstance() ersetzen.
- isZipDownloadActive() durch getProvideZipDownload() ersetzen.