Im Zuge des Schneebayern-Projektes besteht die Anforderung, dass die imxTools1 (für allgemeine imxTools-Inhalte) sowie die imxTools2 (für den Schneehöhenticker) parallel zueinander laufen müssen.
Dazu wurde ein neuer Task in der build.xml angelegt, der eigtl genau das gleiche tut wie der register_integration_imxtools, nur dass er das Ziel in einen imxtools2 Ordner anlegt.
Auszug aus der build.properties:
register_integration_imxtools2=2_2_0
register_integration_imxtools=1_3_0
Problem war jetzt allerdings, dass schon wie im vorigen Blogeintrag genannt, die Konfigurationsklassen gleich hießen und diese auch noch in der IMXCMS_Configuration also im CMSCore abgelegt werden konnten. Daraus ist resultiert, dass ich die Config-Klasse in der imxTools2-Integrationskomponente umbenannt habe und (ganz wichtig) einen neuen Tag für den 4_3_0_21 für den Core released habe, wo die Methoden für die imxTools Konfiguration rausgeflogen sind.
Warum habe ich das gemacht? Ganz einfach, es wird nicht zwingend benötigt und es führt nur zu weitere Verwirrung und Unflexibiltät.
Das bedeutet allerdings, dass zukünftige Projekte die auf den Core-Tag 4_3_0_21 basieren nicht mehr die Konfiguration im Core ablegen dürfen (das tun die meisten aktuell, also wird es erstmal zu Fehlern kommen), das ist aber gar kein Problem, da in imxTools1 die Klasse IMXTools_Configuration das auch selbst kann (ist eh alles statisch..) und in imxTools2 kann das über den Service erreicht werden.
Das bedeutet jetzt, imxTools1 und imxTools2 können jetzt prinzipiell in einem Portal laufen. Was dort allerdings noch nicht berücksichtigt ist (da es aktuell noch nicht benötigt wird) sind die eigentlich wirklichen Anpassungen wie z.B. die Linkgenerierung, das Caching etc. anzupassen (aktuell werden ja immer die gleichen Identifier verwendet). Das wird dann nochmal ein größeres Arbeitspaket werden.