Definice GUI pro feature
Definice GUI pro feature
Každé rozšíření (feature) umožňuje definovat vlastní GUI. Stačí implementovat rozhraní com.fg.cps.eshop.feature.type.EdeeModuleFeatureWithGui.
Zkopírovat odkaz na sekciPrincip
Od verze v10 se GUI definuje pouze pro AR (administrační rozhraní). Pro FE (frontend) se vrací data prostřednictvím API.
Princip zpracování GUI v rámci EdeeShop je následující:
- Modul nejprve zaregistruje globální slovník pro celý modul. Globální slovník je definován zde.
- Následně systém projde všechna zapnutá rozšíření a pomocí metody EdeeModuleFeatureWithGui#getDictionaryGuiConfigs načte a zaregistruje všechny slovníky. Tyto slovníky jednotlivých features závisejí na globálním slovníku.
- Poté se zpracují projektové slovníky.
- Nakonec se zpracuje pomocné GUI, tzv. "dictionaryFinish", které závisejí na všech slovnících. Zároveň na něm závisí všechna setup-GUI. Tím je zajištěno, že nejprve se zpracují všechny slovníky a až následně všechna setup-GUI.
- Po zpracování všech slovníků se začnou zpracovávat setup-GUI. Nejprve se zpracují GUI jednotlivých features a poté se zpracují projektová rozšíření GUI.
Zkopírovat odkaz na sekciProjektové rozšíření GUI
GUI každé feature je možné na projektu konfiguračně rozšířit pomocí elementů dictionaryExtension a guiExtension.
Element dictionaryExtension rozšiřuje slovník dané feature a je zpracován před všemi setup-GUI.
Element guiExtension rozšiřuje GUI dané feature a je zpracován až po zpracování všech slovníků a GUI dané feature.
Zkopírovat odkaz na sekciPříklad konfigurace:
1 <order>2 <dictionaryExtension>3 <!-- Definice projektového rozšíření slovníku -->4 </dictionaryExtension>5 <guiExtension>6 <!-- Definice projektového rozšíření GUI -->7 </guiExtension>8</order>
Zkopírovat odkaz na sekciStruktura GUI
Gui každé feature má vlastní kořenový uzel. Podle tohoto uzle je možné rozpoznat, do jaké feature GUI patří.
1 - /edee/edeeShop - kořenový uzel administrace.2- /edee/edeeShop/{featureId}/ - root uzel pro každou feature, kde `featureId` je standardně název (simpleName s malým počátečným písmenem) třídy dané feature.
Zkopírovat odkaz na sekciDevelopment režim
Pomocí property dev.edeeShop.devSourcePathPrefix je možné specifikovat seznam (oddělený čárkou) root-adresářů, ve kterém se má EdeeShop pokusit nalézt GUI definované na classpath. Pokud EdeeShop takový zdroj nalezne, nastaví nad tímto zdrojem monitoring změn. Případná změna v GUI se pak projeví téměř ihned, bez nutnosti buildu projektu a jeho opětovného spuštění.
Př.: dev.edeeShop.devSourcePathPrefix=file:/www/edee/eshop/lib_eshop_edee/src/main/resources,file:/www/edee/eshop/lib_eshop_fulltext/src/main/resources,file:/www/edee/eshop/lib_eshop_import/src/main/resources,file:/www/edee/eshop/lib_eshop_catalog/src/main/resources